Experiments with lstm

In [2]:
from utils.paths import TMP_DIR
from utils.paths import ML_FLOW_DIR
from autoregression.utils_ar import prepare_direct_lstm_data,prepare_recursive_lstm_data, run_direct_lstm_experiment, run_recursive_lstm_experiment
from evaluation import evalresu as er
In [3]:
import joblib
n_past_values=100
n_future_values=20
input_shape=(n_past_values,1)

Data preparation

In [4]:
data = joblib.load(TMP_DIR / 'output1_smoothed_RTS.pkl')
In [5]:
X_train_dir, y_train_dir,X_val_dir,y_val_dir,X_test_dir,y_test_dir = prepare_direct_lstm_data(data,n_past_values,n_future_values)
X_train_rec, y_train_rec,X_val_rec,y_val_rec,X_test_rec,y_test_rec = prepare_recursive_lstm_data(data,n_past_values)

Direct Multioutput Model

In [6]:
from autoregression.models.DirMultiLSTM import build_direct_lstm_model_simple,build_advanced_direct_lstm, build_direct_model_avg

Direct Simple 128 units

In [7]:
run_direct_lstm_experiment(
    build_direct_lstm_model_simple,
    'simple',
    'direct_simple',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=128)
Model: "Direct_LSTM_Model_simple"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_layer (LSTM)               │ (None, 128)            │        66,560 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ output_layer (Dense)            │ (None, 20)             │         2,580 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 69,140 (270.08 KB)
 Trainable params: 69,140 (270.08 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 34ms/step - loss: 0.0228 - mae: 0.0800 - mse: 0.0228
Epoch 1: val_loss improved from inf to 0.00304, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 41ms/step - loss: 0.0228 - mae: 0.0799 - mse: 0.0228 - val_loss: 0.0030 - val_mae: 0.0472 - val_mse: 0.0030 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 34ms/step - loss: 0.0013 - mae: 0.0283 - mse: 0.0013
Epoch 2: val_loss improved from 0.00304 to 0.00123, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 40ms/step - loss: 0.0013 - mae: 0.0283 - mse: 0.0013 - val_loss: 0.0012 - val_mae: 0.0281 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 0.0012 - mae: 0.0269 - mse: 0.0012
Epoch 3: val_loss did not improve from 0.00123
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 0.0012 - mae: 0.0269 - mse: 0.0012 - val_loss: 0.0039 - val_mae: 0.0552 - val_mse: 0.0039 - learning_rate: 0.0010
Epoch 4/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 0.0012 - mae: 0.0271 - mse: 0.0012
Epoch 4: val_loss improved from 0.00123 to 0.00105, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 43ms/step - loss: 0.0012 - mae: 0.0271 - mse: 0.0012 - val_loss: 0.0010 - val_mae: 0.0256 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 5/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 0.0011 - mae: 0.0264 - mse: 0.0011
Epoch 5: val_loss did not improve from 0.00105
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 0.0011 - mae: 0.0264 - mse: 0.0011 - val_loss: 0.0019 - val_mae: 0.0353 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 0.0010 - mae: 0.0254 - mse: 0.0010
Epoch 6: val_loss did not improve from 0.00105
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 0.0010 - mae: 0.0254 - mse: 0.0010 - val_loss: 0.0011 - val_mae: 0.0259 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010
Epoch 7: val_loss improved from 0.00105 to 0.00103, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010 - val_loss: 0.0010 - val_mae: 0.0254 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 8/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step - loss: 0.0010 - mae: 0.0247 - mse: 0.0010
Epoch 8: val_loss did not improve from 0.00103
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 0.0010 - mae: 0.0247 - mse: 0.0010 - val_loss: 0.0013 - val_mae: 0.0291 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 9/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 9.7326e-04 - mae: 0.0243 - mse: 9.7326e-04
Epoch 9: val_loss did not improve from 0.00103

Epoch 9: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 9.7319e-04 - mae: 0.0243 - mse: 9.7319e-04 - val_loss: 0.0013 - val_mae: 0.0291 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 10/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 9.3795e-04 - mae: 0.0238 - mse: 9.3795e-04
Epoch 10: val_loss did not improve from 0.00103
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 9.3791e-04 - mae: 0.0238 - mse: 9.3791e-04 - val_loss: 0.0011 - val_mae: 0.0258 - val_mse: 0.0011 - learning_rate: 5.0000e-04
Epoch 11/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 9.2833e-04 - mae: 0.0236 - mse: 9.2833e-04
Epoch 11: val_loss improved from 0.00103 to 0.00099, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 9.2831e-04 - mae: 0.0236 - mse: 9.2831e-04 - val_loss: 9.9498e-04 - val_mae: 0.0248 - val_mse: 9.9498e-04 - learning_rate: 5.0000e-04
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 9.1479e-04 - mae: 0.0235 - mse: 9.1479e-04
Epoch 12: val_loss did not improve from 0.00099
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 9.1479e-04 - mae: 0.0235 - mse: 9.1479e-04 - val_loss: 0.0012 - val_mae: 0.0272 - val_mse: 0.0012 - learning_rate: 5.0000e-04
Epoch 13/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 34ms/step - loss: 9.1246e-04 - mae: 0.0235 - mse: 9.1246e-04
Epoch 13: val_loss improved from 0.00099 to 0.00093, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 40ms/step - loss: 9.1246e-04 - mae: 0.0235 - mse: 9.1246e-04 - val_loss: 9.2565e-04 - val_mae: 0.0238 - val_mse: 9.2565e-04 - learning_rate: 5.0000e-04
Epoch 14/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 9.1165e-04 - mae: 0.0234 - mse: 9.1165e-04
Epoch 14: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 9.1165e-04 - mae: 0.0234 - mse: 9.1165e-04 - val_loss: 0.0018 - val_mae: 0.0354 - val_mse: 0.0018 - learning_rate: 5.0000e-04
Epoch 15/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 9.1114e-04 - mae: 0.0234 - mse: 9.1114e-04
Epoch 15: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 9.1112e-04 - mae: 0.0234 - mse: 9.1112e-04 - val_loss: 9.4264e-04 - val_mae: 0.0241 - val_mse: 9.4264e-04 - learning_rate: 5.0000e-04
Epoch 16/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 9.0581e-04 - mae: 0.0233 - mse: 9.0581e-04
Epoch 16: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 9.0579e-04 - mae: 0.0233 - mse: 9.0579e-04 - val_loss: 0.0010 - val_mae: 0.0256 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 17/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 9.1874e-04 - mae: 0.0235 - mse: 9.1874e-04
Epoch 17: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 9.1869e-04 - mae: 0.0235 - mse: 9.1869e-04 - val_loss: 9.2577e-04 - val_mae: 0.0240 - val_mse: 9.2577e-04 - learning_rate: 5.0000e-04
Epoch 18/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 8.9667e-04 - mae: 0.0232 - mse: 8.9667e-04
Epoch 18: val_loss did not improve from 0.00093

Epoch 18: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 40ms/step - loss: 8.9666e-04 - mae: 0.0232 - mse: 8.9666e-04 - val_loss: 0.0011 - val_mae: 0.0253 - val_mse: 0.0011 - learning_rate: 5.0000e-04
Epoch 19/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 8.8657e-04 - mae: 0.0230 - mse: 8.8657e-04
Epoch 19: val_loss improved from 0.00093 to 0.00085, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 8.8655e-04 - mae: 0.0230 - mse: 8.8655e-04 - val_loss: 8.4657e-04 - val_mae: 0.0225 - val_mse: 8.4657e-04 - learning_rate: 2.5000e-04
Epoch 20/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 8.6188e-04 - mae: 0.0228 - mse: 8.6188e-04
Epoch 20: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 8.6192e-04 - mae: 0.0228 - mse: 8.6192e-04 - val_loss: 8.4787e-04 - val_mae: 0.0227 - val_mse: 8.4787e-04 - learning_rate: 2.5000e-04
Epoch 21/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step - loss: 8.7978e-04 - mae: 0.0230 - mse: 8.7978e-04
Epoch 21: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 45ms/step - loss: 8.7975e-04 - mae: 0.0230 - mse: 8.7975e-04 - val_loss: 0.0012 - val_mae: 0.0270 - val_mse: 0.0012 - learning_rate: 2.5000e-04
Epoch 22/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 8.8966e-04 - mae: 0.0231 - mse: 8.8966e-04
Epoch 22: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 8.8963e-04 - mae: 0.0231 - mse: 8.8963e-04 - val_loss: 9.1687e-04 - val_mae: 0.0236 - val_mse: 9.1687e-04 - learning_rate: 2.5000e-04
Epoch 23/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 35ms/step - loss: 8.6601e-04 - mae: 0.0228 - mse: 8.6601e-04
Epoch 23: val_loss did not improve from 0.00085

Epoch 23: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 8.6603e-04 - mae: 0.0228 - mse: 8.6603e-04 - val_loss: 8.8011e-04 - val_mae: 0.0232 - val_mse: 8.8011e-04 - learning_rate: 2.5000e-04
Epoch 24/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 8.5278e-04 - mae: 0.0226 - mse: 8.5278e-04
Epoch 24: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 8.5281e-04 - mae: 0.0226 - mse: 8.5281e-04 - val_loss: 9.8938e-04 - val_mae: 0.0247 - val_mse: 9.8938e-04 - learning_rate: 1.2500e-04
Epoch 25/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 8.5783e-04 - mae: 0.0226 - mse: 8.5783e-04
Epoch 25: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 8.5782e-04 - mae: 0.0226 - mse: 8.5782e-04 - val_loss: 8.5126e-04 - val_mae: 0.0227 - val_mse: 8.5126e-04 - learning_rate: 1.2500e-04
Epoch 26/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step - loss: 8.7253e-04 - mae: 0.0229 - mse: 8.7253e-04
Epoch 26: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 8.7250e-04 - mae: 0.0229 - mse: 8.7250e-04 - val_loss: 8.7333e-04 - val_mae: 0.0229 - val_mse: 8.7333e-04 - learning_rate: 1.2500e-04
Epoch 27/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 8.4613e-04 - mae: 0.0225 - mse: 8.4613e-04
Epoch 27: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 43ms/step - loss: 8.4617e-04 - mae: 0.0225 - mse: 8.4617e-04 - val_loss: 8.8684e-04 - val_mae: 0.0232 - val_mse: 8.8684e-04 - learning_rate: 1.2500e-04
Epoch 28/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 8.5947e-04 - mae: 0.0227 - mse: 8.5947e-04
Epoch 28: val_loss did not improve from 0.00085

Epoch 28: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 44ms/step - loss: 8.5946e-04 - mae: 0.0227 - mse: 8.5946e-04 - val_loss: 9.4035e-04 - val_mae: 0.0239 - val_mse: 9.4035e-04 - learning_rate: 1.2500e-04
Epoch 29/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step - loss: 8.3414e-04 - mae: 0.0223 - mse: 8.3414e-04
Epoch 29: val_loss did not improve from 0.00085
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 8.3416e-04 - mae: 0.0223 - mse: 8.3416e-04 - val_loss: 8.9549e-04 - val_mae: 0.0233 - val_mse: 8.9549e-04 - learning_rate: 6.2500e-05
Epoch 29: early stopping
Restoring model weights from the end of the best epoch: 19.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 3s 19ms/step
  Metric       Value
0    MSE    0.000967
1    MAE    0.024419
2   RMSE    0.031092
3     R2    0.614404
4   MAPE    4.413228
5  SMAPE    4.361241
6    SAE  131.494786
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001596
1    MAE  0.037553
2   RMSE  0.039956
3     R2 -7.775485
4   MAPE  6.081976
5  SMAPE  5.877845
6    SAE  0.751066
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step
Registered model 'Direct_LSTM_Model_simple' already exists. Creating a new version of this model...
Created version '4' of model 'Direct_LSTM_Model_simple'.

Direct Simple

In [10]:
run_direct_lstm_experiment(
    build_direct_lstm_model_simple,
    'simple',
    'direct_simple',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=64)
Model: "Direct_LSTM_Model_simple"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_layer (LSTM)               │ (None, 64)             │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ output_layer (Dense)            │ (None, 20)             │         1,300 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 18,196 (71.08 KB)
 Trainable params: 18,196 (71.08 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 42ms/step - loss: 0.0253 - mae: 0.0849 - mse: 0.0253
Epoch 1: val_loss improved from inf to 0.00138, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 26s 46ms/step - loss: 0.0253 - mae: 0.0848 - mse: 0.0253 - val_loss: 0.0014 - val_mae: 0.0300 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 34ms/step - loss: 0.0012 - mae: 0.0278 - mse: 0.0012
Epoch 2: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 20s 39ms/step - loss: 0.0012 - mae: 0.0278 - mse: 0.0012 - val_loss: 0.0018 - val_mae: 0.0354 - val_mse: 0.0018 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 0.0011 - mae: 0.0268 - mse: 0.0011
Epoch 3: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 0.0011 - mae: 0.0268 - mse: 0.0011 - val_loss: 0.0014 - val_mae: 0.0301 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 4/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 0.0011 - mae: 0.0263 - mse: 0.0011
Epoch 4: val_loss improved from 0.00138 to 0.00130, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 42ms/step - loss: 0.0011 - mae: 0.0263 - mse: 0.0011 - val_loss: 0.0013 - val_mae: 0.0287 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 5/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 40ms/step - loss: 0.0011 - mae: 0.0258 - mse: 0.0011
Epoch 5: val_loss improved from 0.00130 to 0.00118, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 0.0011 - mae: 0.0258 - mse: 0.0011 - val_loss: 0.0012 - val_mae: 0.0271 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 40ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010
Epoch 6: val_loss did not improve from 0.00118
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010 - val_loss: 0.0018 - val_mae: 0.0348 - val_mse: 0.0018 - learning_rate: 0.0010
Epoch 7/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010
Epoch 7: val_loss improved from 0.00118 to 0.00092, saving model to models/saved/Direct_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 21s 41ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010 - val_loss: 9.2373e-04 - val_mae: 0.0239 - val_mse: 9.2373e-04 - learning_rate: 0.0010
Epoch 8/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step - loss: 9.8846e-04 - mae: 0.0245 - mse: 9.8846e-04
Epoch 8: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 9.8839e-04 - mae: 0.0245 - mse: 9.8839e-04 - val_loss: 0.0011 - val_mae: 0.0256 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 9/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 38ms/step - loss: 9.5551e-04 - mae: 0.0241 - mse: 9.5551e-04
Epoch 9: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 43ms/step - loss: 9.5553e-04 - mae: 0.0241 - mse: 9.5553e-04 - val_loss: 0.0012 - val_mae: 0.0268 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 10/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 43ms/step - loss: 9.5366e-04 - mae: 0.0240 - mse: 9.5366e-04
Epoch 10: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 24s 47ms/step - loss: 9.5364e-04 - mae: 0.0240 - mse: 9.5364e-04 - val_loss: 0.0011 - val_mae: 0.0257 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 11/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 41ms/step - loss: 9.5961e-04 - mae: 0.0240 - mse: 9.5961e-04
Epoch 11: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 45ms/step - loss: 9.5948e-04 - mae: 0.0240 - mse: 9.5948e-04 - val_loss: 0.0012 - val_mae: 0.0270 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 12/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 40ms/step - loss: 9.5942e-04 - mae: 0.0240 - mse: 9.5942e-04
Epoch 12: val_loss did not improve from 0.00092

Epoch 12: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 9.5935e-04 - mae: 0.0240 - mse: 9.5935e-04 - val_loss: 0.0010 - val_mae: 0.0250 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 13/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step - loss: 9.0645e-04 - mae: 0.0233 - mse: 9.0645e-04
Epoch 13: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 9.0645e-04 - mae: 0.0233 - mse: 9.0645e-04 - val_loss: 9.6225e-04 - val_mae: 0.0242 - val_mse: 9.6225e-04 - learning_rate: 5.0000e-04
Epoch 14/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 44ms/step - loss: 9.1934e-04 - mae: 0.0235 - mse: 9.1934e-04
Epoch 14: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 25s 49ms/step - loss: 9.1932e-04 - mae: 0.0235 - mse: 9.1932e-04 - val_loss: 0.0012 - val_mae: 0.0266 - val_mse: 0.0012 - learning_rate: 5.0000e-04
Epoch 15/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 43ms/step - loss: 9.0153e-04 - mae: 0.0233 - mse: 9.0153e-04
Epoch 15: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 24s 47ms/step - loss: 9.0157e-04 - mae: 0.0233 - mse: 9.0157e-04 - val_loss: 9.3496e-04 - val_mae: 0.0239 - val_mse: 9.3496e-04 - learning_rate: 5.0000e-04
Epoch 16/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 40ms/step - loss: 9.1746e-04 - mae: 0.0235 - mse: 9.1746e-04
Epoch 16: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 23s 44ms/step - loss: 9.1745e-04 - mae: 0.0235 - mse: 9.1745e-04 - val_loss: 0.0012 - val_mae: 0.0267 - val_mse: 0.0012 - learning_rate: 5.0000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step - loss: 8.9456e-04 - mae: 0.0232 - mse: 8.9456e-04
Epoch 17: val_loss did not improve from 0.00092

Epoch 17: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 22s 43ms/step - loss: 8.9456e-04 - mae: 0.0232 - mse: 8.9456e-04 - val_loss: 9.3021e-04 - val_mae: 0.0239 - val_mse: 9.3021e-04 - learning_rate: 5.0000e-04
Epoch 17: early stopping
Restoring model weights from the end of the best epoch: 7.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 3s 15ms/step
  Metric       Value
0    MSE    0.001032
1    MAE    0.025554
2   RMSE    0.032128
3     R2    0.588292
4   MAPE    4.636100
5  SMAPE    4.571842
6    SAE  137.609697
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.000688
1    MAE  0.022493
2   RMSE  0.026239
3     R2 -2.784451
4   MAPE  3.661434
5  SMAPE  3.571581
6    SAE  0.449864
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 48ms/step
Registered model 'Direct_LSTM_Model_simple' already exists. Creating a new version of this model...
Created version '3' of model 'Direct_LSTM_Model_simple'.

Direct Average 128 units

In [8]:
run_direct_lstm_experiment(
    build_direct_model_avg,
    'average',
    'direct_average',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=128)
Model: "Avarege_Direct_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional (Bidirectional)   │ (None, 100, 512)       │       528,384 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout (Dropout)               │ (None, 100, 512)       │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_1 (Bidirectional) │ (None, 256)            │       656,384 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_1 (Dropout)             │ (None, 256)            │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense (Dense)                   │ (None, 128)            │        32,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_2 (Dropout)             │ (None, 128)            │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_1 (Dense)                 │ (None, 20)             │         2,580 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 1,220,244 (4.65 MB)
 Trainable params: 1,220,244 (4.65 MB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 302ms/step - loss: 0.0172 - mae: 0.0842 - mse: 0.0172
Epoch 1: val_loss improved from inf to 0.00206, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 178s 333ms/step - loss: 0.0172 - mae: 0.0841 - mse: 0.0172 - val_loss: 0.0021 - val_mae: 0.0379 - val_mse: 0.0021 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 315ms/step - loss: 0.0023 - mae: 0.0378 - mse: 0.0023
Epoch 2: val_loss improved from 0.00206 to 0.00159, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 179s 347ms/step - loss: 0.0023 - mae: 0.0378 - mse: 0.0023 - val_loss: 0.0016 - val_mae: 0.0325 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 312ms/step - loss: 0.0018 - mae: 0.0334 - mse: 0.0018
Epoch 3: val_loss improved from 0.00159 to 0.00097, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 176s 341ms/step - loss: 0.0018 - mae: 0.0334 - mse: 0.0018 - val_loss: 9.7181e-04 - val_mae: 0.0245 - val_mse: 9.7181e-04 - learning_rate: 0.0010
Epoch 4/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 301ms/step - loss: 0.0016 - mae: 0.0311 - mse: 0.0016
Epoch 4: val_loss improved from 0.00097 to 0.00096, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 170s 329ms/step - loss: 0.0016 - mae: 0.0311 - mse: 0.0016 - val_loss: 9.5522e-04 - val_mae: 0.0243 - val_mse: 9.5522e-04 - learning_rate: 0.0010
Epoch 5/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 308ms/step - loss: 0.0014 - mae: 0.0292 - mse: 0.0014
Epoch 5: val_loss improved from 0.00096 to 0.00092, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 174s 336ms/step - loss: 0.0014 - mae: 0.0292 - mse: 0.0014 - val_loss: 9.1629e-04 - val_mae: 0.0237 - val_mse: 9.1629e-04 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 312ms/step - loss: 0.0012 - mae: 0.0276 - mse: 0.0012
Epoch 6: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 176s 341ms/step - loss: 0.0012 - mae: 0.0276 - mse: 0.0012 - val_loss: 0.0011 - val_mae: 0.0257 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 314ms/step - loss: 0.0012 - mae: 0.0268 - mse: 0.0012
Epoch 7: val_loss did not improve from 0.00092
516/516 ━━━━━━━━━━━━━━━━━━━━ 177s 343ms/step - loss: 0.0012 - mae: 0.0268 - mse: 0.0012 - val_loss: 0.0012 - val_mae: 0.0270 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 8/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 309ms/step - loss: 0.0012 - mae: 0.0267 - mse: 0.0012
Epoch 8: val_loss did not improve from 0.00092

Epoch 8: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 175s 339ms/step - loss: 0.0012 - mae: 0.0267 - mse: 0.0012 - val_loss: 9.2764e-04 - val_mae: 0.0238 - val_mse: 9.2764e-04 - learning_rate: 0.0010
Epoch 9/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 326ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011
Epoch 9: val_loss improved from 0.00092 to 0.00086, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 185s 358ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011 - val_loss: 8.6355e-04 - val_mae: 0.0229 - val_mse: 8.6355e-04 - learning_rate: 5.0000e-04
Epoch 10/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 323ms/step - loss: 0.0010 - mae: 0.0252 - mse: 0.0010
Epoch 10: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 184s 356ms/step - loss: 0.0010 - mae: 0.0252 - mse: 0.0010 - val_loss: 0.0011 - val_mae: 0.0267 - val_mse: 0.0011 - learning_rate: 5.0000e-04
Epoch 11/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 337ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010
Epoch 11: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 189s 366ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010 - val_loss: 0.0010 - val_mae: 0.0250 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 306ms/step - loss: 0.0010 - mae: 0.0252 - mse: 0.0010
Epoch 12: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 175s 340ms/step - loss: 0.0010 - mae: 0.0252 - mse: 0.0010 - val_loss: 9.6057e-04 - val_mae: 0.0242 - val_mse: 9.6057e-04 - learning_rate: 5.0000e-04
Epoch 13/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 330ms/step - loss: 9.9895e-04 - mae: 0.0247 - mse: 9.9895e-04
Epoch 13: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 188s 364ms/step - loss: 9.9897e-04 - mae: 0.0247 - mse: 9.9897e-04 - val_loss: 8.7775e-04 - val_mae: 0.0232 - val_mse: 8.7775e-04 - learning_rate: 5.0000e-04
Epoch 14/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 334ms/step - loss: 9.8306e-04 - mae: 0.0245 - mse: 9.8306e-04
Epoch 14: val_loss did not improve from 0.00086

Epoch 14: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 187s 363ms/step - loss: 9.8307e-04 - mae: 0.0245 - mse: 9.8307e-04 - val_loss: 0.0010 - val_mae: 0.0247 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 15/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 325ms/step - loss: 9.7247e-04 - mae: 0.0243 - mse: 9.7247e-04
Epoch 15: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 184s 357ms/step - loss: 9.7244e-04 - mae: 0.0243 - mse: 9.7244e-04 - val_loss: 9.0373e-04 - val_mae: 0.0234 - val_mse: 9.0373e-04 - learning_rate: 2.5000e-04
Epoch 16/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 319ms/step - loss: 9.4562e-04 - mae: 0.0240 - mse: 9.4562e-04
Epoch 16: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 180s 349ms/step - loss: 9.4562e-04 - mae: 0.0240 - mse: 9.4562e-04 - val_loss: 8.9370e-04 - val_mae: 0.0233 - val_mse: 8.9370e-04 - learning_rate: 2.5000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 318ms/step - loss: 9.3340e-04 - mae: 0.0238 - mse: 9.3340e-04
Epoch 17: val_loss improved from 0.00086 to 0.00084, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 180s 348ms/step - loss: 9.3341e-04 - mae: 0.0238 - mse: 9.3341e-04 - val_loss: 8.4475e-04 - val_mae: 0.0226 - val_mse: 8.4475e-04 - learning_rate: 2.5000e-04
Epoch 18/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 313ms/step - loss: 9.4470e-04 - mae: 0.0239 - mse: 9.4470e-04
Epoch 18: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 178s 345ms/step - loss: 9.4468e-04 - mae: 0.0239 - mse: 9.4468e-04 - val_loss: 9.1188e-04 - val_mae: 0.0235 - val_mse: 9.1188e-04 - learning_rate: 2.5000e-04
Epoch 19/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 322ms/step - loss: 9.3031e-04 - mae: 0.0238 - mse: 9.3031e-04
Epoch 19: val_loss did not improve from 0.00084

Epoch 19: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 353ms/step - loss: 9.3031e-04 - mae: 0.0238 - mse: 9.3031e-04 - val_loss: 9.7191e-04 - val_mae: 0.0245 - val_mse: 9.7191e-04 - learning_rate: 2.5000e-04
Epoch 20/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 322ms/step - loss: 9.1866e-04 - mae: 0.0236 - mse: 9.1866e-04
Epoch 20: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 181s 351ms/step - loss: 9.1866e-04 - mae: 0.0236 - mse: 9.1866e-04 - val_loss: 8.7116e-04 - val_mae: 0.0229 - val_mse: 8.7116e-04 - learning_rate: 1.2500e-04
Epoch 21/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 323ms/step - loss: 9.2228e-04 - mae: 0.0236 - mse: 9.2228e-04
Epoch 21: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 352ms/step - loss: 9.2226e-04 - mae: 0.0236 - mse: 9.2226e-04 - val_loss: 9.2194e-04 - val_mae: 0.0237 - val_mse: 9.2194e-04 - learning_rate: 1.2500e-04
Epoch 22/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 324ms/step - loss: 9.0414e-04 - mae: 0.0234 - mse: 9.0414e-04
Epoch 22: val_loss improved from 0.00084 to 0.00083, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 353ms/step - loss: 9.0415e-04 - mae: 0.0234 - mse: 9.0415e-04 - val_loss: 8.3224e-04 - val_mae: 0.0224 - val_mse: 8.3224e-04 - learning_rate: 1.2500e-04
Epoch 23/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 316ms/step - loss: 9.2149e-04 - mae: 0.0236 - mse: 9.2149e-04
Epoch 23: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 179s 347ms/step - loss: 9.2146e-04 - mae: 0.0236 - mse: 9.2146e-04 - val_loss: 0.0010 - val_mae: 0.0253 - val_mse: 0.0010 - learning_rate: 1.2500e-04
Epoch 24/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 320ms/step - loss: 9.1647e-04 - mae: 0.0235 - mse: 9.1647e-04
Epoch 24: val_loss did not improve from 0.00083

Epoch 24: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 181s 351ms/step - loss: 9.1646e-04 - mae: 0.0235 - mse: 9.1646e-04 - val_loss: 0.0010 - val_mae: 0.0253 - val_mse: 0.0010 - learning_rate: 1.2500e-04
Epoch 25/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 315ms/step - loss: 8.9057e-04 - mae: 0.0232 - mse: 8.9057e-04
Epoch 25: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 178s 345ms/step - loss: 8.9058e-04 - mae: 0.0232 - mse: 8.9058e-04 - val_loss: 9.6005e-04 - val_mae: 0.0242 - val_mse: 9.6005e-04 - learning_rate: 6.2500e-05
Epoch 26/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 319ms/step - loss: 9.0432e-04 - mae: 0.0233 - mse: 9.0432e-04
Epoch 26: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 180s 349ms/step - loss: 9.0430e-04 - mae: 0.0233 - mse: 9.0430e-04 - val_loss: 8.9802e-04 - val_mae: 0.0233 - val_mse: 8.9802e-04 - learning_rate: 6.2500e-05
Epoch 27/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 327ms/step - loss: 8.8811e-04 - mae: 0.0232 - mse: 8.8811e-04
Epoch 27: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 185s 358ms/step - loss: 8.8813e-04 - mae: 0.0232 - mse: 8.8813e-04 - val_loss: 8.4593e-04 - val_mae: 0.0226 - val_mse: 8.4593e-04 - learning_rate: 6.2500e-05
Epoch 28/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 327ms/step - loss: 8.9566e-04 - mae: 0.0232 - mse: 8.9566e-04
Epoch 28: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 185s 358ms/step - loss: 8.9566e-04 - mae: 0.0232 - mse: 8.9566e-04 - val_loss: 8.8039e-04 - val_mae: 0.0230 - val_mse: 8.8039e-04 - learning_rate: 6.2500e-05
Epoch 29/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 321ms/step - loss: 8.9640e-04 - mae: 0.0233 - mse: 8.9640e-04
Epoch 29: val_loss did not improve from 0.00083

Epoch 29: ReduceLROnPlateau reducing learning rate to 3.125000148429535e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 353ms/step - loss: 8.9639e-04 - mae: 0.0233 - mse: 8.9639e-04 - val_loss: 9.0083e-04 - val_mae: 0.0233 - val_mse: 9.0083e-04 - learning_rate: 6.2500e-05
Epoch 30/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 320ms/step - loss: 8.9434e-04 - mae: 0.0232 - mse: 8.9434e-04
Epoch 30: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 352ms/step - loss: 8.9433e-04 - mae: 0.0232 - mse: 8.9433e-04 - val_loss: 9.4006e-04 - val_mae: 0.0239 - val_mse: 9.4006e-04 - learning_rate: 3.1250e-05
Epoch 31/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 321ms/step - loss: 8.9360e-04 - mae: 0.0232 - mse: 8.9360e-04
Epoch 31: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 182s 352ms/step - loss: 8.9359e-04 - mae: 0.0232 - mse: 8.9359e-04 - val_loss: 9.9147e-04 - val_mae: 0.0246 - val_mse: 9.9147e-04 - learning_rate: 3.1250e-05
Epoch 32/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 320ms/step - loss: 8.8345e-04 - mae: 0.0231 - mse: 8.8345e-04
Epoch 32: val_loss did not improve from 0.00083
516/516 ━━━━━━━━━━━━━━━━━━━━ 181s 350ms/step - loss: 8.8345e-04 - mae: 0.0231 - mse: 8.8345e-04 - val_loss: 8.8886e-04 - val_mae: 0.0232 - val_mse: 8.8886e-04 - learning_rate: 3.1250e-05
Epoch 32: early stopping
Restoring model weights from the end of the best epoch: 22.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 17s 99ms/step
  Metric       Value
0    MSE    0.000918
1    MAE    0.023757
2   RMSE    0.030304
3     R2    0.633716
4   MAPE    4.286247
5  SMAPE    4.250666
6    SAE  127.931473
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001519
1    MAE  0.036204
2   RMSE  0.038976
3     R2 -7.350400
4   MAPE  5.868946
5  SMAPE  5.674035
6    SAE  0.724080
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 61ms/step
Registered model 'Direct_LSTM_Model_average' already exists. Creating a new version of this model...
Created version '5' of model 'Direct_LSTM_Model_average'.

Direct Average 64 units

In [11]:
run_direct_lstm_experiment(
    build_direct_model_avg,
    'average',
    'direct_average',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=64)
Model: "Avarege_Direct_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_2 (Bidirectional) │ (None, 100, 256)       │       133,120 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_3 (Dropout)             │ (None, 100, 256)       │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_3 (Bidirectional) │ (None, 128)            │       164,352 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_4 (Dropout)             │ (None, 128)            │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_2 (Dense)                 │ (None, 64)             │         8,256 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_5 (Dropout)             │ (None, 64)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_3 (Dense)                 │ (None, 20)             │         1,300 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 307,028 (1.17 MB)
 Trainable params: 307,028 (1.17 MB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 151ms/step - loss: 0.0276 - mae: 0.1106 - mse: 0.0276
Epoch 1: val_loss improved from inf to 0.00131, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 94s 172ms/step - loss: 0.0276 - mae: 0.1106 - mse: 0.0276 - val_loss: 0.0013 - val_mae: 0.0291 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 147ms/step - loss: 0.0031 - mae: 0.0439 - mse: 0.0031
Epoch 2: val_loss improved from 0.00131 to 0.00101, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 85s 165ms/step - loss: 0.0031 - mae: 0.0439 - mse: 0.0031 - val_loss: 0.0010 - val_mae: 0.0252 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 134ms/step - loss: 0.0021 - mae: 0.0363 - mse: 0.0021
Epoch 3: val_loss did not improve from 0.00101
516/516 ━━━━━━━━━━━━━━━━━━━━ 79s 153ms/step - loss: 0.0021 - mae: 0.0363 - mse: 0.0021 - val_loss: 0.0013 - val_mae: 0.0287 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 4/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 131ms/step - loss: 0.0017 - mae: 0.0328 - mse: 0.0017
Epoch 4: val_loss did not improve from 0.00101
516/516 ━━━━━━━━━━━━━━━━━━━━ 78s 151ms/step - loss: 0.0017 - mae: 0.0328 - mse: 0.0017 - val_loss: 0.0016 - val_mae: 0.0331 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 5/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 140ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015
Epoch 5: val_loss did not improve from 0.00101
516/516 ━━━━━━━━━━━━━━━━━━━━ 83s 161ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015 - val_loss: 0.0011 - val_mae: 0.0256 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 144ms/step - loss: 0.0013 - mae: 0.0285 - mse: 0.0013
Epoch 6: val_loss improved from 0.00101 to 0.00100, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 84s 164ms/step - loss: 0.0013 - mae: 0.0285 - mse: 0.0013 - val_loss: 9.9543e-04 - val_mae: 0.0247 - val_mse: 9.9543e-04 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 141ms/step - loss: 0.0012 - mae: 0.0274 - mse: 0.0012
Epoch 7: val_loss did not improve from 0.00100

Epoch 7: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 84s 163ms/step - loss: 0.0012 - mae: 0.0274 - mse: 0.0012 - val_loss: 0.0011 - val_mae: 0.0268 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 8/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 150ms/step - loss: 0.0011 - mae: 0.0260 - mse: 0.0011
Epoch 8: val_loss improved from 0.00100 to 0.00090, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 87s 169ms/step - loss: 0.0011 - mae: 0.0260 - mse: 0.0011 - val_loss: 9.0299e-04 - val_mae: 0.0235 - val_mse: 9.0299e-04 - learning_rate: 5.0000e-04
Epoch 9/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 138ms/step - loss: 0.0011 - mae: 0.0256 - mse: 0.0011
Epoch 9: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 82s 159ms/step - loss: 0.0011 - mae: 0.0256 - mse: 0.0011 - val_loss: 0.0011 - val_mae: 0.0260 - val_mse: 0.0011 - learning_rate: 5.0000e-04
Epoch 10/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 147ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011
Epoch 10: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 86s 166ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011 - val_loss: 9.6023e-04 - val_mae: 0.0243 - val_mse: 9.6023e-04 - learning_rate: 5.0000e-04
Epoch 11/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 137ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010
Epoch 11: val_loss improved from 0.00090 to 0.00089, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 81s 157ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010 - val_loss: 8.9440e-04 - val_mae: 0.0234 - val_mse: 8.9440e-04 - learning_rate: 5.0000e-04
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 157ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010
Epoch 12: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 91s 176ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010 - val_loss: 0.0010 - val_mae: 0.0250 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 13/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 136ms/step - loss: 9.9880e-04 - mae: 0.0248 - mse: 9.9880e-04
Epoch 13: val_loss did not improve from 0.00089

Epoch 13: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 81s 157ms/step - loss: 9.9879e-04 - mae: 0.0248 - mse: 9.9879e-04 - val_loss: 0.0013 - val_mae: 0.0289 - val_mse: 0.0013 - learning_rate: 5.0000e-04
Epoch 14/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 148ms/step - loss: 9.7137e-04 - mae: 0.0243 - mse: 9.7137e-04
Epoch 14: val_loss improved from 0.00089 to 0.00084, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 87s 168ms/step - loss: 9.7134e-04 - mae: 0.0243 - mse: 9.7134e-04 - val_loss: 8.3664e-04 - val_mae: 0.0225 - val_mse: 8.3664e-04 - learning_rate: 2.5000e-04
Epoch 15/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 150ms/step - loss: 9.5867e-04 - mae: 0.0242 - mse: 9.5867e-04
Epoch 15: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 88s 170ms/step - loss: 9.5866e-04 - mae: 0.0242 - mse: 9.5866e-04 - val_loss: 8.6501e-04 - val_mae: 0.0229 - val_mse: 8.6501e-04 - learning_rate: 2.5000e-04
Epoch 16/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 140ms/step - loss: 9.4706e-04 - mae: 0.0240 - mse: 9.4706e-04
Epoch 16: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 83s 160ms/step - loss: 9.4706e-04 - mae: 0.0240 - mse: 9.4706e-04 - val_loss: 0.0010 - val_mae: 0.0251 - val_mse: 0.0010 - learning_rate: 2.5000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 139ms/step - loss: 9.2596e-04 - mae: 0.0237 - mse: 9.2596e-04
Epoch 17: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 83s 160ms/step - loss: 9.2597e-04 - mae: 0.0237 - mse: 9.2597e-04 - val_loss: 8.9031e-04 - val_mae: 0.0234 - val_mse: 8.9031e-04 - learning_rate: 2.5000e-04
Epoch 18/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 143ms/step - loss: 9.2559e-04 - mae: 0.0237 - mse: 9.2559e-04
Epoch 18: val_loss did not improve from 0.00084

Epoch 18: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 84s 163ms/step - loss: 9.2560e-04 - mae: 0.0237 - mse: 9.2560e-04 - val_loss: 9.5985e-04 - val_mae: 0.0242 - val_mse: 9.5985e-04 - learning_rate: 2.5000e-04
Epoch 19/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 129ms/step - loss: 9.1772e-04 - mae: 0.0236 - mse: 9.1772e-04
Epoch 19: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 77s 150ms/step - loss: 9.1772e-04 - mae: 0.0236 - mse: 9.1772e-04 - val_loss: 9.7458e-04 - val_mae: 0.0243 - val_mse: 9.7458e-04 - learning_rate: 1.2500e-04
Epoch 20/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 134ms/step - loss: 9.2385e-04 - mae: 0.0236 - mse: 9.2385e-04
Epoch 20: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 2143s 4s/step - loss: 9.2383e-04 - mae: 0.0236 - mse: 9.2383e-04 - val_loss: 9.4509e-04 - val_mae: 0.0240 - val_mse: 9.4509e-04 - learning_rate: 1.2500e-04
Epoch 21/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 4s/step - loss: 9.1790e-04 - mae: 0.0236 - mse: 9.1790e-04
Epoch 21: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 2096s 4s/step - loss: 9.1790e-04 - mae: 0.0236 - mse: 9.1790e-04 - val_loss: 9.8873e-04 - val_mae: 0.0246 - val_mse: 9.8873e-04 - learning_rate: 1.2500e-04
Epoch 22/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5s/step - loss: 9.2420e-04 - mae: 0.0236 - mse: 9.2420e-04
Epoch 22: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 2576s 5s/step - loss: 9.2417e-04 - mae: 0.0236 - mse: 9.2417e-04 - val_loss: 8.6196e-04 - val_mae: 0.0229 - val_mse: 8.6196e-04 - learning_rate: 1.2500e-04
Epoch 23/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 152ms/step - loss: 9.1195e-04 - mae: 0.0234 - mse: 9.1195e-04
Epoch 23: val_loss did not improve from 0.00084

Epoch 23: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 91s 176ms/step - loss: 9.1194e-04 - mae: 0.0234 - mse: 9.1194e-04 - val_loss: 8.5486e-04 - val_mae: 0.0227 - val_mse: 8.5486e-04 - learning_rate: 1.2500e-04
Epoch 24/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 150ms/step - loss: 9.0412e-04 - mae: 0.0234 - mse: 9.0412e-04
Epoch 24: val_loss did not improve from 0.00084
516/516 ━━━━━━━━━━━━━━━━━━━━ 90s 174ms/step - loss: 9.0413e-04 - mae: 0.0234 - mse: 9.0413e-04 - val_loss: 9.8833e-04 - val_mae: 0.0245 - val_mse: 9.8833e-04 - learning_rate: 6.2500e-05
Epoch 24: early stopping
Restoring model weights from the end of the best epoch: 14.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 13s 72ms/step
  Metric       Value
0    MSE    0.000916
1    MAE    0.023643
2   RMSE    0.030262
3     R2    0.634731
4   MAPE    4.257481
5  SMAPE    4.231848
6    SAE  127.319169
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001641
1    MAE  0.037640
2   RMSE  0.040506
3     R2 -8.018935
4   MAPE  6.099637
5  SMAPE  5.889675
6    SAE  0.752803
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 69ms/step
Registered model 'Direct_LSTM_Model_average' already exists. Creating a new version of this model...
Created version '3' of model 'Direct_LSTM_Model_average'.

Direct Average 32 units

In [12]:
run_direct_lstm_experiment(
    build_direct_model_avg,
    'average',
    'direct_average',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=32)
Model: "Avarege_Direct_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_4 (Bidirectional) │ (None, 100, 128)       │        33,792 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_6 (Dropout)             │ (None, 100, 128)       │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_5 (Bidirectional) │ (None, 64)             │        41,216 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_7 (Dropout)             │ (None, 64)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_4 (Dense)                 │ (None, 32)             │         2,080 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_8 (Dropout)             │ (None, 32)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_5 (Dense)                 │ (None, 20)             │           660 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 77,748 (303.70 KB)
 Trainable params: 77,748 (303.70 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 109ms/step - loss: 0.0465 - mae: 0.1483 - mse: 0.0465
Epoch 1: val_loss improved from inf to 0.00249, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 69s 123ms/step - loss: 0.0465 - mae: 0.1482 - mse: 0.0465 - val_loss: 0.0025 - val_mae: 0.0422 - val_mse: 0.0025 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 107ms/step - loss: 0.0038 - mae: 0.0482 - mse: 0.0038
Epoch 2: val_loss improved from 0.00249 to 0.00146, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 62s 119ms/step - loss: 0.0038 - mae: 0.0482 - mse: 0.0038 - val_loss: 0.0015 - val_mae: 0.0309 - val_mse: 0.0015 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 106ms/step - loss: 0.0027 - mae: 0.0411 - mse: 0.0027
Epoch 3: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 61s 118ms/step - loss: 0.0027 - mae: 0.0411 - mse: 0.0027 - val_loss: 0.0026 - val_mae: 0.0436 - val_mse: 0.0026 - learning_rate: 0.0010
Epoch 4/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 106ms/step - loss: 0.0021 - mae: 0.0360 - mse: 0.0021
Epoch 4: val_loss improved from 0.00146 to 0.00141, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 61s 118ms/step - loss: 0.0021 - mae: 0.0360 - mse: 0.0021 - val_loss: 0.0014 - val_mae: 0.0304 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 5/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 107ms/step - loss: 0.0017 - mae: 0.0327 - mse: 0.0017
Epoch 5: val_loss improved from 0.00141 to 0.00099, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 62s 119ms/step - loss: 0.0017 - mae: 0.0327 - mse: 0.0017 - val_loss: 9.8511e-04 - val_mae: 0.0249 - val_mse: 9.8511e-04 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015
Epoch 6: val_loss did not improve from 0.00099
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 116ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015 - val_loss: 0.0013 - val_mae: 0.0295 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 105ms/step - loss: 0.0013 - mae: 0.0283 - mse: 0.0013
Epoch 7: val_loss improved from 0.00099 to 0.00093, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 61s 118ms/step - loss: 0.0013 - mae: 0.0283 - mse: 0.0013 - val_loss: 9.2861e-04 - val_mae: 0.0240 - val_mse: 9.2861e-04 - learning_rate: 0.0010
Epoch 8/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 105ms/step - loss: 0.0012 - mae: 0.0271 - mse: 0.0012
Epoch 8: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 117ms/step - loss: 0.0012 - mae: 0.0271 - mse: 0.0012 - val_loss: 0.0010 - val_mae: 0.0252 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 9/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 0.0011 - mae: 0.0259 - mse: 0.0011
Epoch 9: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 116ms/step - loss: 0.0011 - mae: 0.0259 - mse: 0.0011 - val_loss: 0.0010 - val_mae: 0.0250 - val_mse: 0.0010 - learning_rate: 0.0010
Epoch 10/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 0.0011 - mae: 0.0254 - mse: 0.0011
Epoch 10: val_loss did not improve from 0.00093

Epoch 10: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 115ms/step - loss: 0.0011 - mae: 0.0254 - mse: 0.0011 - val_loss: 0.0011 - val_mae: 0.0265 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 11/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010
Epoch 11: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 115ms/step - loss: 0.0010 - mae: 0.0251 - mse: 0.0010 - val_loss: 0.0010 - val_mae: 0.0253 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 101ms/step - loss: 0.0010 - mae: 0.0248 - mse: 0.0010
Epoch 12: val_loss did not improve from 0.00093
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 113ms/step - loss: 0.0010 - mae: 0.0248 - mse: 0.0010 - val_loss: 9.9758e-04 - val_mae: 0.0247 - val_mse: 9.9758e-04 - learning_rate: 5.0000e-04
Epoch 13/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 106ms/step - loss: 9.8815e-04 - mae: 0.0245 - mse: 9.8815e-04
Epoch 13: val_loss improved from 0.00093 to 0.00090, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 61s 118ms/step - loss: 9.8813e-04 - mae: 0.0245 - mse: 9.8813e-04 - val_loss: 8.9774e-04 - val_mae: 0.0234 - val_mse: 8.9774e-04 - learning_rate: 5.0000e-04
Epoch 14/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 103ms/step - loss: 9.7735e-04 - mae: 0.0244 - mse: 9.7735e-04
Epoch 14: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 116ms/step - loss: 9.7735e-04 - mae: 0.0244 - mse: 9.7735e-04 - val_loss: 0.0012 - val_mae: 0.0273 - val_mse: 0.0012 - learning_rate: 5.0000e-04
Epoch 15/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 103ms/step - loss: 9.7412e-04 - mae: 0.0244 - mse: 9.7412e-04
Epoch 15: val_loss did not improve from 0.00090

Epoch 15: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 115ms/step - loss: 9.7409e-04 - mae: 0.0244 - mse: 9.7409e-04 - val_loss: 0.0011 - val_mae: 0.0257 - val_mse: 0.0011 - learning_rate: 5.0000e-04
Epoch 16/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 102ms/step - loss: 9.5017e-04 - mae: 0.0241 - mse: 9.5017e-04
Epoch 16: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 114ms/step - loss: 9.5018e-04 - mae: 0.0241 - mse: 9.5018e-04 - val_loss: 0.0010 - val_mae: 0.0249 - val_mse: 0.0010 - learning_rate: 2.5000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 9.5148e-04 - mae: 0.0241 - mse: 9.5148e-04
Epoch 17: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 116ms/step - loss: 9.5145e-04 - mae: 0.0241 - mse: 9.5145e-04 - val_loss: 0.0011 - val_mae: 0.0259 - val_mse: 0.0011 - learning_rate: 2.5000e-04
Epoch 18/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 9.2970e-04 - mae: 0.0237 - mse: 9.2970e-04
Epoch 18: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 115ms/step - loss: 9.2972e-04 - mae: 0.0237 - mse: 9.2972e-04 - val_loss: 9.1160e-04 - val_mae: 0.0235 - val_mse: 9.1160e-04 - learning_rate: 2.5000e-04
Epoch 19/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 102ms/step - loss: 9.3475e-04 - mae: 0.0239 - mse: 9.3475e-04
Epoch 19: val_loss did not improve from 0.00090
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 113ms/step - loss: 9.3476e-04 - mae: 0.0239 - mse: 9.3476e-04 - val_loss: 0.0010 - val_mae: 0.0248 - val_mse: 0.0010 - learning_rate: 2.5000e-04
Epoch 20/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 101ms/step - loss: 9.3682e-04 - mae: 0.0238 - mse: 9.3682e-04
Epoch 20: val_loss improved from 0.00090 to 0.00087, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 113ms/step - loss: 9.3682e-04 - mae: 0.0238 - mse: 9.3682e-04 - val_loss: 8.7411e-04 - val_mae: 0.0230 - val_mse: 8.7411e-04 - learning_rate: 2.5000e-04
Epoch 21/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 103ms/step - loss: 9.2579e-04 - mae: 0.0237 - mse: 9.2579e-04
Epoch 21: val_loss did not improve from 0.00087
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 114ms/step - loss: 9.2580e-04 - mae: 0.0237 - mse: 9.2580e-04 - val_loss: 9.4185e-04 - val_mae: 0.0239 - val_mse: 9.4185e-04 - learning_rate: 2.5000e-04
Epoch 22/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 102ms/step - loss: 9.4794e-04 - mae: 0.0240 - mse: 9.4794e-04
Epoch 22: val_loss improved from 0.00087 to 0.00086, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 59s 114ms/step - loss: 9.4792e-04 - mae: 0.0240 - mse: 9.4792e-04 - val_loss: 8.5781e-04 - val_mae: 0.0228 - val_mse: 8.5781e-04 - learning_rate: 2.5000e-04
Epoch 23/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 101ms/step - loss: 9.2239e-04 - mae: 0.0237 - mse: 9.2239e-04
Epoch 23: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 113ms/step - loss: 9.2240e-04 - mae: 0.0237 - mse: 9.2240e-04 - val_loss: 9.1869e-04 - val_mae: 0.0236 - val_mse: 9.1869e-04 - learning_rate: 2.5000e-04
Epoch 24/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 104ms/step - loss: 9.2537e-04 - mae: 0.0237 - mse: 9.2537e-04
Epoch 24: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 115ms/step - loss: 9.2538e-04 - mae: 0.0237 - mse: 9.2538e-04 - val_loss: 9.1946e-04 - val_mae: 0.0236 - val_mse: 9.1946e-04 - learning_rate: 2.5000e-04
Epoch 25/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 105ms/step - loss: 9.2213e-04 - mae: 0.0236 - mse: 9.2213e-04
Epoch 25: val_loss did not improve from 0.00086

Epoch 25: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 60s 116ms/step - loss: 9.2214e-04 - mae: 0.0236 - mse: 9.2214e-04 - val_loss: 0.0013 - val_mae: 0.0288 - val_mse: 0.0013 - learning_rate: 2.5000e-04
Epoch 26/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 101ms/step - loss: 9.2896e-04 - mae: 0.0237 - mse: 9.2896e-04
Epoch 26: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 112ms/step - loss: 9.2895e-04 - mae: 0.0237 - mse: 9.2895e-04 - val_loss: 9.8292e-04 - val_mae: 0.0244 - val_mse: 9.8292e-04 - learning_rate: 1.2500e-04
Epoch 27/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 9.3129e-04 - mae: 0.0237 - mse: 9.3129e-04
Epoch 27: val_loss improved from 0.00086 to 0.00086, saving model to models/saved/Direct_LSTM_Model_average.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 9.3127e-04 - mae: 0.0237 - mse: 9.3127e-04 - val_loss: 8.5737e-04 - val_mae: 0.0226 - val_mse: 8.5737e-04 - learning_rate: 1.2500e-04
Epoch 28/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 100ms/step - loss: 9.2187e-04 - mae: 0.0237 - mse: 9.2187e-04
Epoch 28: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 112ms/step - loss: 9.2185e-04 - mae: 0.0237 - mse: 9.2185e-04 - val_loss: 9.1403e-04 - val_mae: 0.0236 - val_mse: 9.1403e-04 - learning_rate: 1.2500e-04
Epoch 29/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 102ms/step - loss: 9.0415e-04 - mae: 0.0234 - mse: 9.0415e-04
Epoch 29: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 58s 113ms/step - loss: 9.0416e-04 - mae: 0.0234 - mse: 9.0416e-04 - val_loss: 8.9964e-04 - val_mae: 0.0233 - val_mse: 8.9964e-04 - learning_rate: 1.2500e-04
Epoch 30/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 99ms/step - loss: 9.2287e-04 - mae: 0.0236 - mse: 9.2287e-04
Epoch 30: val_loss did not improve from 0.00086

Epoch 30: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 57s 110ms/step - loss: 9.2286e-04 - mae: 0.0236 - mse: 9.2286e-04 - val_loss: 9.3180e-04 - val_mae: 0.0238 - val_mse: 9.3180e-04 - learning_rate: 1.2500e-04
Epoch 31/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 98ms/step - loss: 8.9844e-04 - mae: 0.0234 - mse: 8.9844e-04
Epoch 31: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 109ms/step - loss: 8.9845e-04 - mae: 0.0234 - mse: 8.9845e-04 - val_loss: 9.0851e-04 - val_mae: 0.0234 - val_mse: 9.0851e-04 - learning_rate: 6.2500e-05
Epoch 32/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 8.9819e-04 - mae: 0.0233 - mse: 8.9819e-04
Epoch 32: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 8.9820e-04 - mae: 0.0233 - mse: 8.9820e-04 - val_loss: 9.0699e-04 - val_mae: 0.0233 - val_mse: 9.0699e-04 - learning_rate: 6.2500e-05
Epoch 33/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 8.9200e-04 - mae: 0.0232 - mse: 8.9200e-04
Epoch 33: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 8.9201e-04 - mae: 0.0232 - mse: 8.9201e-04 - val_loss: 8.8171e-04 - val_mae: 0.0230 - val_mse: 8.8171e-04 - learning_rate: 6.2500e-05
Epoch 34/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 8.8470e-04 - mae: 0.0232 - mse: 8.8470e-04
Epoch 34: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 8.8473e-04 - mae: 0.0232 - mse: 8.8473e-04 - val_loss: 8.8440e-04 - val_mae: 0.0231 - val_mse: 8.8440e-04 - learning_rate: 6.2500e-05
Epoch 35/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 99ms/step - loss: 8.9359e-04 - mae: 0.0232 - mse: 8.9359e-04
Epoch 35: val_loss did not improve from 0.00086

Epoch 35: ReduceLROnPlateau reducing learning rate to 3.125000148429535e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 57s 110ms/step - loss: 8.9360e-04 - mae: 0.0232 - mse: 8.9360e-04 - val_loss: 9.6942e-04 - val_mae: 0.0243 - val_mse: 9.6942e-04 - learning_rate: 6.2500e-05
Epoch 36/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 98ms/step - loss: 8.8090e-04 - mae: 0.0230 - mse: 8.8090e-04
Epoch 36: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 109ms/step - loss: 8.8092e-04 - mae: 0.0230 - mse: 8.8092e-04 - val_loss: 9.2318e-04 - val_mae: 0.0236 - val_mse: 9.2318e-04 - learning_rate: 3.1250e-05
Epoch 37/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 8.7917e-04 - mae: 0.0231 - mse: 8.7917e-04
Epoch 37: val_loss did not improve from 0.00086
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 8.7920e-04 - mae: 0.0231 - mse: 8.7920e-04 - val_loss: 9.0724e-04 - val_mae: 0.0234 - val_mse: 9.0724e-04 - learning_rate: 3.1250e-05
Epoch 37: early stopping
Restoring model weights from the end of the best epoch: 27.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 6s 35ms/step
  Metric       Value
0    MSE    0.000926
1    MAE    0.023720
2   RMSE    0.030428
3     R2    0.630699
4   MAPE    4.280387
5  SMAPE    4.245939
6    SAE  127.733871
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001430
1    MAE  0.035124
2   RMSE  0.037815
3     R2 -6.860410
4   MAPE  5.694740
5  SMAPE  5.510978
6    SAE  0.702487
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 41ms/step
Registered model 'Direct_LSTM_Model_average' already exists. Creating a new version of this model...
Created version '4' of model 'Direct_LSTM_Model_average'.

Direct Advanced

In [13]:
run_direct_lstm_experiment(
    build_advanced_direct_lstm,
    'advanced',
    'direct_advanced',
    X_train_dir,
    y_train_dir,
    X_val_dir,
    y_val_dir,
    X_test_dir,
    y_test_dir,
    20,epochs=100,lstm_units=64)
Model: "Advanced_Direct_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidir_lstm_1 (Bidirectional)    │ (None, 100, 128)       │        33,792 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_1 (Dropout)             │ (None, 100, 128)       │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ batch_norm_1                    │ (None, 100, 128)       │           512 │
│ (BatchNormalization)            │                        │               │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_2 (LSTM)                   │ (None, 32)             │        20,608 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_2 (Dropout)             │ (None, 32)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ batch_norm_2                    │ (None, 32)             │           128 │
│ (BatchNormalization)            │                        │               │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_1 (Dense)                 │ (None, 64)             │         2,112 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_3 (Dropout)             │ (None, 64)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_2 (Dense)                 │ (None, 32)             │         2,080 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ output_layer (Dense)            │ (None, 20)             │           660 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 59,892 (233.95 KB)
 Trainable params: 59,572 (232.70 KB)
 Non-trainable params: 320 (1.25 KB)
Epoch 1/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 87ms/step - loss: 0.1076 - mae: 0.2189 - mse: 0.1076
Epoch 1: val_loss improved from inf to 0.07088, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 55s 98ms/step - loss: 0.1075 - mae: 0.2187 - mse: 0.1075 - val_loss: 0.0709 - val_mae: 0.2613 - val_mse: 0.0709 - learning_rate: 0.0010
Epoch 2/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 90ms/step - loss: 0.0040 - mae: 0.0500 - mse: 0.0040
Epoch 2: val_loss improved from 0.07088 to 0.02623, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 52s 101ms/step - loss: 0.0040 - mae: 0.0500 - mse: 0.0040 - val_loss: 0.0262 - val_mae: 0.1574 - val_mse: 0.0262 - learning_rate: 0.0010
Epoch 3/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 95ms/step - loss: 0.0023 - mae: 0.0377 - mse: 0.0023
Epoch 3: val_loss improved from 0.02623 to 0.01405, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 55s 106ms/step - loss: 0.0023 - mae: 0.0377 - mse: 0.0023 - val_loss: 0.0141 - val_mae: 0.1124 - val_mse: 0.0141 - learning_rate: 0.0010
Epoch 4/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 91ms/step - loss: 0.0018 - mae: 0.0333 - mse: 0.0018
Epoch 4: val_loss improved from 0.01405 to 0.01130, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 53s 102ms/step - loss: 0.0018 - mae: 0.0333 - mse: 0.0018 - val_loss: 0.0113 - val_mae: 0.0995 - val_mse: 0.0113 - learning_rate: 0.0010
Epoch 5/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 92ms/step - loss: 0.0015 - mae: 0.0307 - mse: 0.0015
Epoch 5: val_loss improved from 0.01130 to 0.00517, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 53s 104ms/step - loss: 0.0015 - mae: 0.0307 - mse: 0.0015 - val_loss: 0.0052 - val_mae: 0.0645 - val_mse: 0.0052 - learning_rate: 0.0010
Epoch 6/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 91ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 6: val_loss did not improve from 0.00517
516/516 ━━━━━━━━━━━━━━━━━━━━ 52s 102ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0062 - val_mae: 0.0711 - val_mse: 0.0062 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 93ms/step - loss: 0.0013 - mae: 0.0288 - mse: 0.0013
Epoch 7: val_loss improved from 0.00517 to 0.00120, saving model to models/saved/Direct_LSTM_Model_advanced.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 54s 105ms/step - loss: 0.0013 - mae: 0.0288 - mse: 0.0013 - val_loss: 0.0012 - val_mae: 0.0273 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 8/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 97ms/step - loss: 0.0013 - mae: 0.0281 - mse: 0.0013
Epoch 8: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 56s 108ms/step - loss: 0.0013 - mae: 0.0281 - mse: 0.0013 - val_loss: 0.0058 - val_mae: 0.0683 - val_mse: 0.0058 - learning_rate: 0.0010
Epoch 9/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 94ms/step - loss: 0.0013 - mae: 0.0282 - mse: 0.0013
Epoch 9: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 54s 105ms/step - loss: 0.0013 - mae: 0.0282 - mse: 0.0013 - val_loss: 0.0075 - val_mae: 0.0787 - val_mse: 0.0075 - learning_rate: 0.0010
Epoch 10/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 92ms/step - loss: 0.0013 - mae: 0.0279 - mse: 0.0013
Epoch 10: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 53s 104ms/step - loss: 0.0013 - mae: 0.0279 - mse: 0.0013 - val_loss: 0.0021 - val_mae: 0.0384 - val_mse: 0.0021 - learning_rate: 0.0010
Epoch 11/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 90ms/step - loss: 0.0012 - mae: 0.0275 - mse: 0.0012
Epoch 11: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 52s 101ms/step - loss: 0.0012 - mae: 0.0275 - mse: 0.0012 - val_loss: 0.0014 - val_mae: 0.0286 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 90ms/step - loss: 0.0013 - mae: 0.0278 - mse: 0.0013
Epoch 12: val_loss did not improve from 0.00120

Epoch 12: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 52s 101ms/step - loss: 0.0013 - mae: 0.0278 - mse: 0.0013 - val_loss: 0.0043 - val_mae: 0.0534 - val_mse: 0.0043 - learning_rate: 0.0010
Epoch 13/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 91ms/step - loss: 0.0012 - mae: 0.0269 - mse: 0.0012
Epoch 13: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 52s 102ms/step - loss: 0.0012 - mae: 0.0269 - mse: 0.0012 - val_loss: 0.0022 - val_mae: 0.0391 - val_mse: 0.0022 - learning_rate: 5.0000e-04
Epoch 14/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 92ms/step - loss: 0.0011 - mae: 0.0265 - mse: 0.0011
Epoch 14: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 53s 103ms/step - loss: 0.0011 - mae: 0.0265 - mse: 0.0011 - val_loss: 0.0020 - val_mae: 0.0362 - val_mse: 0.0020 - learning_rate: 5.0000e-04
Epoch 15/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 93ms/step - loss: 0.0011 - mae: 0.0266 - mse: 0.0011
Epoch 15: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 54s 104ms/step - loss: 0.0011 - mae: 0.0266 - mse: 0.0011 - val_loss: 0.0024 - val_mae: 0.0414 - val_mse: 0.0024 - learning_rate: 5.0000e-04
Epoch 16/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 91ms/step - loss: 0.0011 - mae: 0.0266 - mse: 0.0011
Epoch 16: val_loss did not improve from 0.00120
516/516 ━━━━━━━━━━━━━━━━━━━━ 53s 102ms/step - loss: 0.0011 - mae: 0.0266 - mse: 0.0011 - val_loss: 0.0018 - val_mae: 0.0340 - val_mse: 0.0018 - learning_rate: 5.0000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 89ms/step - loss: 0.0011 - mae: 0.0264 - mse: 0.0011
Epoch 17: val_loss did not improve from 0.00120

Epoch 17: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 51s 100ms/step - loss: 0.0011 - mae: 0.0264 - mse: 0.0011 - val_loss: 0.0026 - val_mae: 0.0434 - val_mse: 0.0026 - learning_rate: 5.0000e-04
Epoch 17: early stopping
Restoring model weights from the end of the best epoch: 7.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 6s 34ms/step
  Metric       Value
0    MSE    0.001158
1    MAE    0.026813
2   RMSE    0.034033
3     R2    0.538024
4   MAPE    4.730761
5  SMAPE    4.802120
6    SAE  144.385386
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.000479
1    MAE  0.017986
2   RMSE  0.021891
3     R2 -1.634037
4   MAPE  2.924539
5  SMAPE  2.865229
6    SAE  0.359718
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 33ms/step
Registered model 'Direct_LSTM_Model_advanced' already exists. Creating a new version of this model...
Created version '3' of model 'Direct_LSTM_Model_advanced'.

Recursive Model

In [41]:
from autoregression.models.RecurLSTM import build_recursive_lstm_simple

Recursive Simple

In [42]:
run_recursive_lstm_experiment(
    build_recursive_lstm_simple,
    'simple',
    'recursive_simple',
    X_train_rec,
    y_train_rec,
    X_val_rec,
    y_val_rec,
    X_test_rec,
    y_test_dir,
    n_predicted_rows=5000,
    output_steps=20,
    epochs=100)
Model: "Recursive_LSTM_Model_simple"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_layer (LSTM)               │ (None, 64)             │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ output_layer (Dense)            │ (None, 1)              │            65 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 16,961 (66.25 KB)
 Trainable params: 16,961 (66.25 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 0.0105 - mae: 0.0502 - mse: 0.0105
Epoch 1: val_loss improved from inf to 0.00050, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 25ms/step - loss: 0.0104 - mae: 0.0501 - mse: 0.0104 - val_loss: 4.9504e-04 - val_mae: 0.0178 - val_mse: 4.9504e-04 - learning_rate: 0.0010
Epoch 2/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 4.4489e-04 - mae: 0.0168 - mse: 4.4489e-04
Epoch 2: val_loss improved from 0.00050 to 0.00033, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 4.4477e-04 - mae: 0.0168 - mse: 4.4477e-04 - val_loss: 3.2985e-04 - val_mae: 0.0144 - val_mse: 3.2985e-04 - learning_rate: 0.0010
Epoch 3/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 3.4540e-04 - mae: 0.0148 - mse: 3.4540e-04
Epoch 3: val_loss improved from 0.00033 to 0.00030, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 3.4530e-04 - mae: 0.0148 - mse: 3.4530e-04 - val_loss: 2.9730e-04 - val_mae: 0.0138 - val_mse: 2.9730e-04 - learning_rate: 0.0010
Epoch 4/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 2.8250e-04 - mae: 0.0135 - mse: 2.8250e-04
Epoch 4: val_loss improved from 0.00030 to 0.00022, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 2.8243e-04 - mae: 0.0135 - mse: 2.8243e-04 - val_loss: 2.1683e-04 - val_mae: 0.0117 - val_mse: 2.1683e-04 - learning_rate: 0.0010
Epoch 5/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 2.3279e-04 - mae: 0.0122 - mse: 2.3279e-04
Epoch 5: val_loss improved from 0.00022 to 0.00021, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 12s 24ms/step - loss: 2.3277e-04 - mae: 0.0122 - mse: 2.3277e-04 - val_loss: 2.0624e-04 - val_mae: 0.0114 - val_mse: 2.0624e-04 - learning_rate: 0.0010
Epoch 6/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 2.0964e-04 - mae: 0.0116 - mse: 2.0964e-04
Epoch 6: val_loss improved from 0.00021 to 0.00017, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 12s 24ms/step - loss: 2.0959e-04 - mae: 0.0116 - mse: 2.0959e-04 - val_loss: 1.7477e-04 - val_mae: 0.0106 - val_mse: 1.7477e-04 - learning_rate: 0.0010
Epoch 7/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 1.8550e-04 - mae: 0.0109 - mse: 1.8550e-04
Epoch 7: val_loss improved from 0.00017 to 0.00016, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 1.8549e-04 - mae: 0.0109 - mse: 1.8549e-04 - val_loss: 1.5961e-04 - val_mae: 0.0101 - val_mse: 1.5961e-04 - learning_rate: 0.0010
Epoch 8/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.7259e-04 - mae: 0.0105 - mse: 1.7259e-04
Epoch 8: val_loss improved from 0.00016 to 0.00014, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 1.7259e-04 - mae: 0.0105 - mse: 1.7259e-04 - val_loss: 1.3526e-04 - val_mae: 0.0093 - val_mse: 1.3526e-04 - learning_rate: 0.0010
Epoch 9/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.5117e-04 - mae: 0.0099 - mse: 1.5117e-04
Epoch 9: val_loss improved from 0.00014 to 0.00013, saving model to models/saved/Recursive_LSTM_Model_simple.keras

Epoch 9: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.5113e-04 - mae: 0.0099 - mse: 1.5113e-04 - val_loss: 1.2516e-04 - val_mae: 0.0090 - val_mse: 1.2516e-04 - learning_rate: 0.0010
Epoch 10/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.3552e-04 - mae: 0.0093 - mse: 1.3552e-04
Epoch 10: val_loss improved from 0.00013 to 0.00012, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.3551e-04 - mae: 0.0093 - mse: 1.3551e-04 - val_loss: 1.1857e-04 - val_mae: 0.0087 - val_mse: 1.1857e-04 - learning_rate: 5.0000e-04
Epoch 11/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 1.3316e-04 - mae: 0.0092 - mse: 1.3316e-04
Epoch 11: val_loss improved from 0.00012 to 0.00012, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 12s 24ms/step - loss: 1.3314e-04 - mae: 0.0092 - mse: 1.3314e-04 - val_loss: 1.1500e-04 - val_mae: 0.0086 - val_mse: 1.1500e-04 - learning_rate: 5.0000e-04
Epoch 12/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.2530e-04 - mae: 0.0090 - mse: 1.2530e-04
Epoch 12: val_loss improved from 0.00012 to 0.00011, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 1.2530e-04 - mae: 0.0090 - mse: 1.2530e-04 - val_loss: 1.1273e-04 - val_mae: 0.0085 - val_mse: 1.1273e-04 - learning_rate: 5.0000e-04
Epoch 13/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 1.2269e-04 - mae: 0.0089 - mse: 1.2269e-04
Epoch 13: val_loss did not improve from 0.00011
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 1.2269e-04 - mae: 0.0089 - mse: 1.2269e-04 - val_loss: 1.1517e-04 - val_mae: 0.0086 - val_mse: 1.1517e-04 - learning_rate: 5.0000e-04
Epoch 14/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.1770e-04 - mae: 0.0087 - mse: 1.1770e-04
Epoch 14: val_loss did not improve from 0.00011
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.1771e-04 - mae: 0.0087 - mse: 1.1771e-04 - val_loss: 1.1465e-04 - val_mae: 0.0086 - val_mse: 1.1465e-04 - learning_rate: 5.0000e-04
Epoch 15/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 1.2494e-04 - mae: 0.0090 - mse: 1.2494e-04
Epoch 15: val_loss improved from 0.00011 to 0.00011, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 12s 24ms/step - loss: 1.2492e-04 - mae: 0.0090 - mse: 1.2492e-04 - val_loss: 1.0728e-04 - val_mae: 0.0083 - val_mse: 1.0728e-04 - learning_rate: 5.0000e-04
Epoch 16/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.1677e-04 - mae: 0.0086 - mse: 1.1677e-04
Epoch 16: val_loss did not improve from 0.00011

Epoch 16: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.1677e-04 - mae: 0.0086 - mse: 1.1677e-04 - val_loss: 1.2772e-04 - val_mae: 0.0090 - val_mse: 1.2772e-04 - learning_rate: 5.0000e-04
Epoch 17/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.1074e-04 - mae: 0.0084 - mse: 1.1074e-04
Epoch 17: val_loss did not improve from 0.00011
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 1.1074e-04 - mae: 0.0084 - mse: 1.1074e-04 - val_loss: 1.0915e-04 - val_mae: 0.0084 - val_mse: 1.0915e-04 - learning_rate: 2.5000e-04
Epoch 18/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.1318e-04 - mae: 0.0085 - mse: 1.1318e-04
Epoch 18: val_loss improved from 0.00011 to 0.00011, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 1.1316e-04 - mae: 0.0085 - mse: 1.1316e-04 - val_loss: 1.0591e-04 - val_mae: 0.0082 - val_mse: 1.0591e-04 - learning_rate: 2.5000e-04
Epoch 19/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.1099e-04 - mae: 0.0084 - mse: 1.1099e-04
Epoch 19: val_loss improved from 0.00011 to 0.00011, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 1.1099e-04 - mae: 0.0084 - mse: 1.1099e-04 - val_loss: 1.0563e-04 - val_mae: 0.0082 - val_mse: 1.0563e-04 - learning_rate: 2.5000e-04
Epoch 20/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 1.0965e-04 - mae: 0.0084 - mse: 1.0965e-04
Epoch 20: val_loss did not improve from 0.00011
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 26ms/step - loss: 1.0965e-04 - mae: 0.0084 - mse: 1.0965e-04 - val_loss: 1.0641e-04 - val_mae: 0.0082 - val_mse: 1.0641e-04 - learning_rate: 2.5000e-04
Epoch 21/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.0786e-04 - mae: 0.0083 - mse: 1.0786e-04
Epoch 21: val_loss improved from 0.00011 to 0.00010, saving model to models/saved/Recursive_LSTM_Model_simple.keras

Epoch 21: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 1.0788e-04 - mae: 0.0083 - mse: 1.0788e-04 - val_loss: 1.0461e-04 - val_mae: 0.0082 - val_mse: 1.0461e-04 - learning_rate: 2.5000e-04
Epoch 22/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 21ms/step - loss: 1.0967e-04 - mae: 0.0084 - mse: 1.0967e-04
Epoch 22: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.0967e-04 - mae: 0.0084 - mse: 1.0967e-04 - val_loss: 1.0467e-04 - val_mae: 0.0082 - val_mse: 1.0467e-04 - learning_rate: 1.2500e-04
Epoch 23/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0636e-04 - mae: 0.0083 - mse: 1.0636e-04
Epoch 23: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 1.0637e-04 - mae: 0.0083 - mse: 1.0637e-04 - val_loss: 1.1395e-04 - val_mae: 0.0085 - val_mse: 1.1395e-04 - learning_rate: 1.2500e-04
Epoch 24/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.1026e-04 - mae: 0.0084 - mse: 1.1026e-04
Epoch 24: val_loss improved from 0.00010 to 0.00010, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.1025e-04 - mae: 0.0084 - mse: 1.1025e-04 - val_loss: 1.0438e-04 - val_mae: 0.0082 - val_mse: 1.0438e-04 - learning_rate: 1.2500e-04
Epoch 25/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0856e-04 - mae: 0.0084 - mse: 1.0856e-04
Epoch 25: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.0856e-04 - mae: 0.0084 - mse: 1.0856e-04 - val_loss: 1.0741e-04 - val_mae: 0.0083 - val_mse: 1.0741e-04 - learning_rate: 1.2500e-04
Epoch 26/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 26ms/step - loss: 1.0645e-04 - mae: 0.0082 - mse: 1.0645e-04
Epoch 26: val_loss did not improve from 0.00010

Epoch 26: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 29ms/step - loss: 1.0646e-04 - mae: 0.0082 - mse: 1.0646e-04 - val_loss: 1.1142e-04 - val_mae: 0.0084 - val_mse: 1.1142e-04 - learning_rate: 1.2500e-04
Epoch 27/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 26ms/step - loss: 1.0685e-04 - mae: 0.0083 - mse: 1.0685e-04
Epoch 27: val_loss improved from 0.00010 to 0.00010, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 29ms/step - loss: 1.0685e-04 - mae: 0.0083 - mse: 1.0685e-04 - val_loss: 1.0426e-04 - val_mae: 0.0082 - val_mse: 1.0426e-04 - learning_rate: 6.2500e-05
Epoch 28/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.0796e-04 - mae: 0.0083 - mse: 1.0796e-04
Epoch 28: val_loss improved from 0.00010 to 0.00010, saving model to models/saved/Recursive_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 1.0796e-04 - mae: 0.0083 - mse: 1.0796e-04 - val_loss: 1.0414e-04 - val_mae: 0.0082 - val_mse: 1.0414e-04 - learning_rate: 6.2500e-05
Epoch 29/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0709e-04 - mae: 0.0083 - mse: 1.0709e-04
Epoch 29: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.0709e-04 - mae: 0.0083 - mse: 1.0709e-04 - val_loss: 1.0975e-04 - val_mae: 0.0083 - val_mse: 1.0975e-04 - learning_rate: 6.2500e-05
Epoch 30/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0686e-04 - mae: 0.0083 - mse: 1.0686e-04
Epoch 30: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 12s 24ms/step - loss: 1.0686e-04 - mae: 0.0083 - mse: 1.0686e-04 - val_loss: 1.1134e-04 - val_mae: 0.0084 - val_mse: 1.1134e-04 - learning_rate: 6.2500e-05
Epoch 31/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0726e-04 - mae: 0.0083 - mse: 1.0726e-04
Epoch 31: val_loss did not improve from 0.00010

Epoch 31: ReduceLROnPlateau reducing learning rate to 3.125000148429535e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 1.0726e-04 - mae: 0.0083 - mse: 1.0726e-04 - val_loss: 1.1336e-04 - val_mae: 0.0085 - val_mse: 1.1336e-04 - learning_rate: 6.2500e-05
Epoch 32/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 25ms/step - loss: 1.0412e-04 - mae: 0.0082 - mse: 1.0412e-04
Epoch 32: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 28ms/step - loss: 1.0412e-04 - mae: 0.0082 - mse: 1.0412e-04 - val_loss: 1.1005e-04 - val_mae: 0.0084 - val_mse: 1.1005e-04 - learning_rate: 3.1250e-05
Epoch 33/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 1.0665e-04 - mae: 0.0083 - mse: 1.0665e-04
Epoch 33: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 1.0665e-04 - mae: 0.0083 - mse: 1.0665e-04 - val_loss: 1.0624e-04 - val_mae: 0.0082 - val_mse: 1.0624e-04 - learning_rate: 3.1250e-05
Epoch 34/100
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 22ms/step - loss: 1.0749e-04 - mae: 0.0083 - mse: 1.0749e-04
Epoch 34: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 24ms/step - loss: 1.0748e-04 - mae: 0.0083 - mse: 1.0748e-04 - val_loss: 1.0489e-04 - val_mae: 0.0082 - val_mse: 1.0489e-04 - learning_rate: 3.1250e-05
Epoch 35/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.0702e-04 - mae: 0.0083 - mse: 1.0702e-04
Epoch 35: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 1.0702e-04 - mae: 0.0083 - mse: 1.0702e-04 - val_loss: 1.0925e-04 - val_mae: 0.0083 - val_mse: 1.0925e-04 - learning_rate: 3.1250e-05
Epoch 36/100
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 26ms/step - loss: 1.0740e-04 - mae: 0.0083 - mse: 1.0740e-04
Epoch 36: val_loss did not improve from 0.00010

Epoch 36: ReduceLROnPlateau reducing learning rate to 1.5625000742147677e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 29ms/step - loss: 1.0740e-04 - mae: 0.0083 - mse: 1.0740e-04 - val_loss: 1.0812e-04 - val_mae: 0.0083 - val_mse: 1.0812e-04 - learning_rate: 3.1250e-05
Epoch 37/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 1.0367e-04 - mae: 0.0082 - mse: 1.0367e-04
Epoch 37: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 1.0367e-04 - mae: 0.0082 - mse: 1.0367e-04 - val_loss: 1.1001e-04 - val_mae: 0.0084 - val_mse: 1.1001e-04 - learning_rate: 1.5625e-05
Epoch 38/100
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 1.0677e-04 - mae: 0.0083 - mse: 1.0677e-04
Epoch 38: val_loss did not improve from 0.00010
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 1.0677e-04 - mae: 0.0083 - mse: 1.0677e-04 - val_loss: 1.0553e-04 - val_mae: 0.0082 - val_mse: 1.0553e-04 - learning_rate: 1.5625e-05
Epoch 38: early stopping
Restoring model weights from the end of the best epoch: 28.
No description has been provided for this image
  Metric       Value
0    MSE    0.001175
1    MAE    0.027646
2   RMSE    0.034279
3     R2    0.552002
4   MAPE    5.058365
5  SMAPE    4.937416
6    SAE  138.231778
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001111
1    MAE  0.030223
2   RMSE  0.033331
3     R2 -5.106532
4   MAPE  4.904937
5  SMAPE  4.761486
6    SAE  0.604462
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 63ms/step
Successfully registered model 'Recursive_LSTM_Model_simple'.
Created version '1' of model 'Recursive_LSTM_Model_simple'.

Sequence to sequence model

In [38]:
from autoregression.utils_ar import run_seq2seq_lstm_experiment
from autoregression.models.seq2seq_lstm import build_seq2seq_lstm_simple

Seq2Seq Simple

In [39]:
run_seq2seq_lstm_experiment(build_seq2seq_lstm_simple,
                            'simple',
                            'seq2seq_simple',
                            X_train=X_train_dir,
                            X_test=X_test_dir,
                            X_val=X_val_dir,
                            y_test=y_test_dir,
                            y_train=y_train_dir,
                            y_val=y_val_dir,
                            output_steps=20,
                            lstm_units=32)
Model: "Seq2Seq_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ encoder_input (InputLayer)      │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ encoder_lstm (LSTM)             │ (None, 32)             │         4,352 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ repeat_vector (RepeatVector)    │ (None, 20, 32)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ decoder_lstm (LSTM)             │ (None, 20, 32)         │         8,320 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ time_distributed_output         │ (None, 20, 1)          │            33 │
│ (TimeDistributed)               │                        │               │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 12,705 (49.63 KB)
 Trainable params: 12,705 (49.63 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 0.0133 - mae: 0.0707 - mse: 0.0133
Epoch 1: val_loss improved from inf to 0.00141, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 18s 28ms/step - loss: 0.0132 - mae: 0.0707 - mse: 0.0132 - val_loss: 0.0014 - val_mae: 0.0307 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 2/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 25ms/step - loss: 0.0012 - mae: 0.0279 - mse: 0.0012
Epoch 2: val_loss improved from 0.00141 to 0.00124, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 0.0012 - mae: 0.0279 - mse: 0.0012 - val_loss: 0.0012 - val_mae: 0.0286 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 3/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 27ms/step - loss: 0.0012 - mae: 0.0274 - mse: 0.0012
Epoch 3: val_loss did not improve from 0.00124
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 29ms/step - loss: 0.0012 - mae: 0.0274 - mse: 0.0012 - val_loss: 0.0014 - val_mae: 0.0306 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 4/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 27ms/step - loss: 0.0011 - mae: 0.0263 - mse: 0.0011
Epoch 4: val_loss improved from 0.00124 to 0.00106, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 29ms/step - loss: 0.0011 - mae: 0.0263 - mse: 0.0011 - val_loss: 0.0011 - val_mae: 0.0261 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 5/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011
Epoch 5: val_loss improved from 0.00106 to 0.00097, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 0.0011 - mae: 0.0257 - mse: 0.0011 - val_loss: 9.7057e-04 - val_mae: 0.0248 - val_mse: 9.7057e-04 - learning_rate: 0.0010
Epoch 6/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010
Epoch 6: val_loss did not improve from 0.00097
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 0.0010 - mae: 0.0250 - mse: 0.0010 - val_loss: 0.0011 - val_mae: 0.0271 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 7/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 0.0010 - mae: 0.0248 - mse: 0.0010
Epoch 7: val_loss improved from 0.00097 to 0.00091, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 0.0010 - mae: 0.0248 - mse: 0.0010 - val_loss: 9.1142e-04 - val_mae: 0.0239 - val_mse: 9.1142e-04 - learning_rate: 0.0010
Epoch 8/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 9.9416e-04 - mae: 0.0247 - mse: 9.9416e-04
Epoch 8: val_loss improved from 0.00091 to 0.00089, saving model to models/saved/Seq2seq_LSTM_Model_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 9.9414e-04 - mae: 0.0247 - mse: 9.9414e-04 - val_loss: 8.8726e-04 - val_mae: 0.0233 - val_mse: 8.8726e-04 - learning_rate: 0.0010
Epoch 9/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 9.6517e-04 - mae: 0.0242 - mse: 9.6517e-04
Epoch 9: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 9.6513e-04 - mae: 0.0242 - mse: 9.6513e-04 - val_loss: 0.0012 - val_mae: 0.0272 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 10/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 9.5117e-04 - mae: 0.0240 - mse: 9.5117e-04
Epoch 10: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 9.5118e-04 - mae: 0.0240 - mse: 9.5118e-04 - val_loss: 0.0012 - val_mae: 0.0278 - val_mse: 0.0012 - learning_rate: 0.0010
Epoch 11/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 25ms/step - loss: 9.8304e-04 - mae: 0.0243 - mse: 9.8304e-04
Epoch 11: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 28ms/step - loss: 9.8284e-04 - mae: 0.0243 - mse: 9.8284e-04 - val_loss: 0.0011 - val_mae: 0.0265 - val_mse: 0.0011 - learning_rate: 0.0010
Epoch 12/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 25ms/step - loss: 9.4905e-04 - mae: 0.0239 - mse: 9.4905e-04
Epoch 12: val_loss did not improve from 0.00089

Epoch 12: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 27ms/step - loss: 9.4903e-04 - mae: 0.0239 - mse: 9.4903e-04 - val_loss: 0.0013 - val_mae: 0.0286 - val_mse: 0.0013 - learning_rate: 0.0010
Epoch 13/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 8.9432e-04 - mae: 0.0232 - mse: 8.9432e-04
Epoch 13: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 25ms/step - loss: 8.9433e-04 - mae: 0.0232 - mse: 8.9433e-04 - val_loss: 0.0010 - val_mae: 0.0253 - val_mse: 0.0010 - learning_rate: 5.0000e-04
Epoch 14/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 9.0044e-04 - mae: 0.0234 - mse: 9.0044e-04
Epoch 14: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 9.0044e-04 - mae: 0.0234 - mse: 9.0044e-04 - val_loss: 9.4328e-04 - val_mae: 0.0240 - val_mse: 9.4328e-04 - learning_rate: 5.0000e-04
Epoch 15/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 26ms/step - loss: 8.9680e-04 - mae: 0.0232 - mse: 8.9680e-04
Epoch 15: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 28ms/step - loss: 8.9679e-04 - mae: 0.0232 - mse: 8.9679e-04 - val_loss: 9.9393e-04 - val_mae: 0.0245 - val_mse: 9.9393e-04 - learning_rate: 5.0000e-04
Epoch 16/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 26ms/step - loss: 9.2054e-04 - mae: 0.0236 - mse: 9.2054e-04
Epoch 16: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 15s 28ms/step - loss: 9.2049e-04 - mae: 0.0236 - mse: 9.2049e-04 - val_loss: 8.9942e-04 - val_mae: 0.0234 - val_mse: 8.9942e-04 - learning_rate: 5.0000e-04
Epoch 17/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 24ms/step - loss: 8.9189e-04 - mae: 0.0231 - mse: 8.9189e-04
Epoch 17: val_loss did not improve from 0.00089

Epoch 17: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 14s 26ms/step - loss: 8.9188e-04 - mae: 0.0231 - mse: 8.9188e-04 - val_loss: 0.0015 - val_mae: 0.0314 - val_mse: 0.0015 - learning_rate: 5.0000e-04
Epoch 18/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 23ms/step - loss: 8.7728e-04 - mae: 0.0230 - mse: 8.7728e-04
Epoch 18: val_loss did not improve from 0.00089
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 26ms/step - loss: 8.7727e-04 - mae: 0.0230 - mse: 8.7727e-04 - val_loss: 9.5193e-04 - val_mae: 0.0240 - val_mse: 9.5193e-04 - learning_rate: 2.5000e-04
Epoch 18: early stopping
Restoring model weights from the end of the best epoch: 8.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 2s 8ms/step
  Metric       Value
0    MSE    0.001001
1    MAE    0.024937
2   RMSE    0.031631
3     R2    0.600926
4   MAPE    4.490235
5  SMAPE    4.458549
6    SAE  134.287732
No description has been provided for this image
No description has been provided for this image
  Metric     Value
0    MSE  0.001543
1    MAE  0.036573
2   RMSE  0.039278
3     R2 -7.480304
4   MAPE  5.928509
5  SMAPE  5.730660
6    SAE  0.731469
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 36ms/step
Registered model 'Seq2seq_LSTM_Model_simple' already exists. Creating a new version of this model...
Created version '3' of model 'Seq2seq_LSTM_Model_simple'.

Hybrid Model

In [21]:
from autoregression.utils_ar import run_direct_refiner_experiment
from autoregression.models.RefineLSTM import build_refinement_cnn_model_simple,build_refinement_lstm_model_simple,build_average_refinement_lstm
import mlflow.keras

Hybrid: Direct Simple + Refine LSTM Simple

In [ ]:
dir_model = mlflow.keras.load_model("models:/Direct_LSTM_Model_simple/4") 
run_direct_refiner_experiment(build_refinement_lstm_model_simple,
                              dir_model,
                              'simple_lstm_simple',
                              'ref_simple_lstm_simple',
                              X_train_dir=X_train_dir,
                              X_test_dir=X_test_dir,
                              X_val_dir=X_val_dir,
                              y_test_dir=y_test_dir,
                              y_train_dir=y_train_dir,
                              y_val_dir=y_val_dir,
                              output_steps=20,
                              units=64)
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step
172/172 ━━━━━━━━━━━━━━━━━━━━ 3s 18ms/step
169/169 ━━━━━━━━━━━━━━━━━━━━ 3s 17ms/step
(20, 1)
Model: "Refinement_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ refinement_input (InputLayer)   │ (None, 20, 1)          │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ refinement_lstm (LSTM)          │ (None, 64)             │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ refined_20th_output (Dense)     │ (None, 1)              │            65 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 16,961 (66.25 KB)
 Trainable params: 16,961 (66.25 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0159 - mae: 0.0670 - mse: 0.0159
Epoch 1: val_loss improved from inf to 0.00139, saving model to models/saved/Direct_Refiner_Model_simple_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 6s 9ms/step - loss: 0.0158 - mae: 0.0669 - mse: 0.0158 - val_loss: 0.0014 - val_mae: 0.0303 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 2/30
509/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 2: val_loss did not improve from 0.00139
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0323 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 3/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 3: val_loss did not improve from 0.00139
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0324 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 4/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015
Epoch 4: val_loss did not improve from 0.00139
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015 - val_loss: 0.0022 - val_mae: 0.0386 - val_mse: 0.0022 - learning_rate: 0.0010
Epoch 5/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014
Epoch 5: val_loss improved from 0.00139 to 0.00137, saving model to models/saved/Direct_Refiner_Model_simple_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0300 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 6/30
509/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 6: val_loss did not improve from 0.00137

Epoch 6: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 7ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0021 - val_mae: 0.0378 - val_mse: 0.0021 - learning_rate: 0.0010
Epoch 7/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014
Epoch 7: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 8ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014 - val_loss: 0.0018 - val_mae: 0.0343 - val_mse: 0.0018 - learning_rate: 5.0000e-04
Epoch 8/30
508/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013
Epoch 8: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 7ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013 - val_loss: 0.0019 - val_mae: 0.0360 - val_mse: 0.0019 - learning_rate: 5.0000e-04
Epoch 9/30
512/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 9: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0020 - val_mae: 0.0369 - val_mse: 0.0020 - learning_rate: 5.0000e-04
Epoch 10/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 10: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0359 - val_mse: 0.0019 - learning_rate: 5.0000e-04
Epoch 11/30
507/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 11: val_loss did not improve from 0.00137

Epoch 11: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0018 - val_mae: 0.0345 - val_mse: 0.0018 - learning_rate: 5.0000e-04
Epoch 12/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014
Epoch 12: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014 - val_loss: 0.0021 - val_mae: 0.0378 - val_mse: 0.0021 - learning_rate: 2.5000e-04
Epoch 13/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014
Epoch 13: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0305 - val_mse: 0.0014 - learning_rate: 2.5000e-04
Epoch 14/30
506/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014
Epoch 14: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0311 - val_mse: 0.0015 - learning_rate: 2.5000e-04
Epoch 15/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 15: val_loss did not improve from 0.00137
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0308 - val_mse: 0.0014 - learning_rate: 2.5000e-04
Epoch 15: early stopping
Restoring model weights from the end of the best epoch: 5.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step
  Metric       Value
0    MSE    0.000946
1    MAE    0.024211
2   RMSE    0.030765
3     R2    0.622487
4   MAPE    4.377203
5  SMAPE    4.331322
6    SAE  130.374342
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 51ms/step
Registered model 'Direct_Refiner_Model_simple_lstm_simple' already exists. Creating a new version of this model...
Created version '2' of model 'Direct_Refiner_Model_simple_lstm_simple'.

Hybrid: Direct Simple + Refine CNN Simple

In [31]:
dir_model = mlflow.keras.load_model("models:/Direct_LSTM_Model_simple/4") 
run_direct_refiner_experiment(build_refinement_cnn_model_simple,
                              dir_model,
                              'simple_cnn_simple',
                              'ref_simple_cnn_simple',
                              X_train_dir=X_train_dir,
                              X_test_dir=X_test_dir,
                              X_val_dir=X_val_dir,
                              y_test_dir=y_test_dir,
                              y_train_dir=y_train_dir,
                              y_val_dir=y_val_dir,
                              output_steps=20,
                              units=32)
516/516 ━━━━━━━━━━━━━━━━━━━━ 10s 19ms/step
172/172 ━━━━━━━━━━━━━━━━━━━━ 3s 20ms/step
169/169 ━━━━━━━━━━━━━━━━━━━━ 3s 18ms/step
(20, 1)
Model: "Base_CNN_Refiner"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ refinement_input (InputLayer)   │ (None, 20, 1)          │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ conv1d_2 (Conv1D)               │ (None, 18, 16)         │            64 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ global_max_pooling1d_2          │ (None, 16)             │             0 │
│ (GlobalMaxPooling1D)            │                        │               │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_14 (Dense)                │ (None, 32)             │           544 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ refined_output (Dense)          │ (None, 1)              │            33 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 641 (2.50 KB)
 Trainable params: 641 (2.50 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
491/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0253 - mae: 0.0968
Epoch 1: val_loss improved from inf to 0.00272, saving model to models/saved/Direct_Refiner_Model_simple_cnn_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 2s 3ms/step - loss: 0.0244 - mae: 0.0944 - val_loss: 0.0027 - val_mae: 0.0436 - learning_rate: 0.0010
Epoch 2/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 1ms/step - loss: 0.0015 - mae: 0.0311
Epoch 2: val_loss improved from 0.00272 to 0.00201, saving model to models/saved/Direct_Refiner_Model_simple_cnn_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0015 - mae: 0.0311 - val_loss: 0.0020 - val_mae: 0.0369 - learning_rate: 0.0010
Epoch 3/30
499/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0302
Epoch 3: val_loss improved from 0.00201 to 0.00169, saving model to models/saved/Direct_Refiner_Model_simple_cnn_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0302 - val_loss: 0.0017 - val_mae: 0.0335 - learning_rate: 0.0010
Epoch 4/30
503/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0301
Epoch 4: val_loss did not improve from 0.00169
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0301 - val_loss: 0.0017 - val_mae: 0.0336 - learning_rate: 0.0010
Epoch 5/30
505/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0301
Epoch 5: val_loss improved from 0.00169 to 0.00151, saving model to models/saved/Direct_Refiner_Model_simple_cnn_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0301 - val_loss: 0.0015 - val_mae: 0.0315 - learning_rate: 0.0010
Epoch 6/30
505/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0304
Epoch 6: val_loss did not improve from 0.00151
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0304 - val_loss: 0.0018 - val_mae: 0.0351 - learning_rate: 0.0010
Epoch 7/30
497/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0299
Epoch 7: val_loss improved from 0.00151 to 0.00145, saving model to models/saved/Direct_Refiner_Model_simple_cnn_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0299 - val_loss: 0.0015 - val_mae: 0.0308 - learning_rate: 0.0010
Epoch 8/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0301
Epoch 8: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 2s 3ms/step - loss: 0.0014 - mae: 0.0301 - val_loss: 0.0015 - val_mae: 0.0308 - learning_rate: 0.0010
Epoch 9/30
500/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0300
Epoch 9: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0301 - val_loss: 0.0016 - val_mae: 0.0320 - learning_rate: 0.0010
Epoch 10/30
507/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0300
Epoch 10: val_loss did not improve from 0.00145

Epoch 10: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0300 - val_loss: 0.0016 - val_mae: 0.0321 - learning_rate: 0.0010
Epoch 11/30
493/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0298
Epoch 11: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0298 - val_loss: 0.0015 - val_mae: 0.0311 - learning_rate: 5.0000e-04
Epoch 12/30
493/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0299
Epoch 12: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0299 - val_loss: 0.0018 - val_mae: 0.0343 - learning_rate: 5.0000e-04
Epoch 13/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0300
Epoch 13: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0300 - val_loss: 0.0016 - val_mae: 0.0323 - learning_rate: 5.0000e-04
Epoch 14/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0302
Epoch 14: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0302 - val_loss: 0.0020 - val_mae: 0.0365 - learning_rate: 5.0000e-04
Epoch 15/30
506/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0302
Epoch 15: val_loss did not improve from 0.00145

Epoch 15: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step - loss: 0.0014 - mae: 0.0302 - val_loss: 0.0017 - val_mae: 0.0341 - learning_rate: 5.0000e-04
Epoch 16/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0298
Epoch 16: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0298 - val_loss: 0.0018 - val_mae: 0.0350 - learning_rate: 2.5000e-04
Epoch 17/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step - loss: 0.0014 - mae: 0.0299
Epoch 17: val_loss did not improve from 0.00145
516/516 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step - loss: 0.0014 - mae: 0.0299 - val_loss: 0.0019 - val_mae: 0.0356 - learning_rate: 2.5000e-04
Epoch 17: early stopping
Restoring model weights from the end of the best epoch: 7.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 0s 1ms/step  
  Metric       Value
0    MSE    0.000959
1    MAE    0.024310
2   RMSE    0.030961
3     R2    0.617651
4   MAPE    4.367289
5  SMAPE    4.347070
6    SAE  130.909086
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 40ms/step
Registered model 'Direct_Refiner_Model_simple_cnn_simple' already exists. Creating a new version of this model...
Created version '3' of model 'Direct_Refiner_Model_simple_cnn_simple'.

Hybrid: Direct Simple + Refine LSTM Average

In [34]:
import importlib
from autoregression.models import RefineLSTM
importlib.reload(RefineLSTM)
from autoregression.models.RefineLSTM import build_average_refinement_lstm
dir_model = mlflow.keras.load_model("models:/Direct_LSTM_Model_simple/4") 
run_direct_refiner_experiment(build_average_refinement_lstm,
                              dir_model,
                              'simple_lstm_avg',
                              'ref_simple_lstm_avg',
                              X_train_dir=X_train_dir,
                              X_test_dir=X_test_dir,
                              X_val_dir=X_val_dir,
                              y_test_dir=y_test_dir,
                              y_train_dir=y_train_dir,
                              y_val_dir=y_val_dir,
                              output_steps=20,
                              units=64)
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step
172/172 ━━━━━━━━━━━━━━━━━━━━ 3s 20ms/step
169/169 ━━━━━━━━━━━━━━━━━━━━ 3s 16ms/step
(20, 1)
Model: "Refiner_LSTM_Average"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ refinement_input (InputLayer)   │ (None, 20, 1)          │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_38 (LSTM)                  │ (None, 20, 64)         │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_39 (Dropout)            │ (None, 20, 64)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_39 (LSTM)                  │ (None, 20, 32)         │        12,416 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_40 (Dropout)            │ (None, 20, 32)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_40 (LSTM)                  │ (None, 16)             │         3,136 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_41 (Dropout)            │ (None, 16)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_17 (Dense)                │ (None, 1)              │            17 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 32,465 (126.82 KB)
 Trainable params: 32,465 (126.82 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0218 - mae: 0.0987 - mse: 0.0218
Epoch 1: val_loss improved from inf to 0.00238, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 17ms/step - loss: 0.0218 - mae: 0.0986 - mse: 0.0218 - val_loss: 0.0024 - val_mae: 0.0406 - val_mse: 0.0024 - learning_rate: 0.0010
Epoch 2/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0046 - mae: 0.0542 - mse: 0.0046
Epoch 2: val_loss improved from 0.00238 to 0.00206, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0046 - mae: 0.0542 - mse: 0.0046 - val_loss: 0.0021 - val_mae: 0.0375 - val_mse: 0.0021 - learning_rate: 0.0010
Epoch 3/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0034 - mae: 0.0459 - mse: 0.0034
Epoch 3: val_loss improved from 0.00206 to 0.00175, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0034 - mae: 0.0459 - mse: 0.0034 - val_loss: 0.0018 - val_mae: 0.0343 - val_mse: 0.0018 - learning_rate: 0.0010
Epoch 4/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0025 - mae: 0.0396 - mse: 0.0025
Epoch 4: val_loss improved from 0.00175 to 0.00155, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0025 - mae: 0.0396 - mse: 0.0025 - val_loss: 0.0016 - val_mae: 0.0322 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 5/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0019 - mae: 0.0348 - mse: 0.0019
Epoch 5: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0019 - mae: 0.0348 - mse: 0.0019 - val_loss: 0.0019 - val_mae: 0.0355 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 6/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0017 - mae: 0.0325 - mse: 0.0017
Epoch 6: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0017 - mae: 0.0325 - mse: 0.0017 - val_loss: 0.0022 - val_mae: 0.0388 - val_mse: 0.0022 - learning_rate: 0.0010
Epoch 7/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0016 - mae: 0.0315 - mse: 0.0016
Epoch 7: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0016 - mae: 0.0315 - mse: 0.0016 - val_loss: 0.0020 - val_mae: 0.0369 - val_mse: 0.0020 - learning_rate: 0.0010
Epoch 8/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0015 - mae: 0.0311 - mse: 0.0015
Epoch 8: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0015 - mae: 0.0311 - mse: 0.0015 - val_loss: 0.0018 - val_mae: 0.0351 - val_mse: 0.0018 - learning_rate: 0.0010
Epoch 9/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0015 - mae: 0.0311 - mse: 0.0015
Epoch 9: val_loss did not improve from 0.00155

Epoch 9: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0015 - mae: 0.0311 - mse: 0.0015 - val_loss: 0.0016 - val_mae: 0.0329 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 10/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014
Epoch 10: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0325 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 11/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014
Epoch 11: val_loss did not improve from 0.00155
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0332 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 12/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 12: val_loss improved from 0.00155 to 0.00141, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0306 - val_mse: 0.0014 - learning_rate: 5.0000e-04
Epoch 13/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 13: val_loss did not improve from 0.00141
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0018 - val_mae: 0.0352 - val_mse: 0.0018 - learning_rate: 5.0000e-04
Epoch 14/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 14: val_loss improved from 0.00141 to 0.00135, saving model to models/saved/Direct_Refiner_Model_simple_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0013 - val_mae: 0.0297 - val_mse: 0.0013 - learning_rate: 5.0000e-04
Epoch 15/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 15: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0340 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 16/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 17ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 16: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 10s 19ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0339 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 17/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 17: val_loss did not improve from 0.00135

Epoch 17: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0333 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 18/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014
Epoch 18: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 18ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0364 - val_mse: 0.0019 - learning_rate: 2.5000e-04
Epoch 19/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014
Epoch 19: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0322 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 20/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 20: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0332 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 21/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 21: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0359 - val_mse: 0.0019 - learning_rate: 2.5000e-04
Epoch 22/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014
Epoch 22: val_loss did not improve from 0.00135

Epoch 22: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0335 - val_mse: 0.0017 - learning_rate: 2.5000e-04
Epoch 23/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 23: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0334 - val_mse: 0.0017 - learning_rate: 1.2500e-04
Epoch 24/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 24: val_loss did not improve from 0.00135
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0342 - val_mse: 0.0017 - learning_rate: 1.2500e-04
Epoch 24: early stopping
Restoring model weights from the end of the best epoch: 14.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 1s 6ms/step
  Metric       Value
0    MSE    0.000988
1    MAE    0.024874
2   RMSE    0.031425
3     R2    0.606120
4   MAPE    4.522718
5  SMAPE    4.450688
6    SAE  133.946168
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 37ms/step
Registered model 'Direct_Refiner_Model_simple_lstm_avg' already exists. Creating a new version of this model...
Created version '4' of model 'Direct_Refiner_Model_simple_lstm_avg'.

Hybrid: Direct Average + Refine LSTM Simple

In [35]:
dir_model_av = mlflow.keras.load_model("models:/Direct_LSTM_Model_average/3") 
dir_model_av.summary()
run_direct_refiner_experiment(build_refinement_lstm_model_simple,
                              dir_model_av,
                              'avg_lstm_simple',
                              'ref_avg_lstm_simple',
                              X_train_dir=X_train_dir,
                              X_test_dir=X_test_dir,
                              X_val_dir=X_val_dir,
                              y_test_dir=y_test_dir,
                              y_train_dir=y_train_dir,
                              y_val_dir=y_val_dir,
                              output_steps=20,
                              units=64)
Model: "Avarege_Direct_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer)        │ (None, 100, 1)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_2 (Bidirectional) │ (None, 100, 256)       │       133,120 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_3 (Dropout)             │ (None, 100, 256)       │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ bidirectional_3 (Bidirectional) │ (None, 128)            │       164,352 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_4 (Dropout)             │ (None, 128)            │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_2 (Dense)                 │ (None, 64)             │         8,256 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_5 (Dropout)             │ (None, 64)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_3 (Dense)                 │ (None, 20)             │         1,300 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 921,086 (3.51 MB)
 Trainable params: 307,028 (1.17 MB)
 Non-trainable params: 0 (0.00 B)
 Optimizer params: 614,058 (2.34 MB)
516/516 ━━━━━━━━━━━━━━━━━━━━ 19s 35ms/step
172/172 ━━━━━━━━━━━━━━━━━━━━ 6s 33ms/step
169/169 ━━━━━━━━━━━━━━━━━━━━ 6s 37ms/step
(20, 1)
Model: "Refinement_LSTM_Model"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ refinement_input (InputLayer)   │ (None, 20, 1)          │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ refinement_lstm (LSTM)          │ (None, 64)             │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ refined_20th_output (Dense)     │ (None, 1)              │            65 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 16,961 (66.25 KB)
 Trainable params: 16,961 (66.25 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0118 - mae: 0.0606 - mse: 0.0118
Epoch 1: val_loss improved from inf to 0.00187, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 5s 7ms/step - loss: 0.0118 - mae: 0.0605 - mse: 0.0118 - val_loss: 0.0019 - val_mae: 0.0356 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 2/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 2: val_loss improved from 0.00187 to 0.00170, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 8ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0338 - val_mse: 0.0017 - learning_rate: 0.0010
Epoch 3/30
509/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 3: val_loss improved from 0.00170 to 0.00163, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0330 - val_mse: 0.0016 - learning_rate: 0.0010
Epoch 4/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015
Epoch 4: val_loss improved from 0.00163 to 0.00146, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 9ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015 - val_loss: 0.0015 - val_mae: 0.0312 - val_mse: 0.0015 - learning_rate: 0.0010
Epoch 5/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 5: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 8ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0021 - val_mae: 0.0384 - val_mse: 0.0021 - learning_rate: 0.0010
Epoch 6/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 6: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0018 - val_mae: 0.0344 - val_mse: 0.0018 - learning_rate: 0.0010
Epoch 7/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 7: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0357 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 8/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014
Epoch 8: val_loss improved from 0.00146 to 0.00138, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0301 - val_mse: 0.0014 - learning_rate: 0.0010
Epoch 9/30
512/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014
Epoch 9: val_loss did not improve from 0.00138

Epoch 9: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0310 - val_mse: 0.0015 - learning_rate: 0.0010
Epoch 10/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014
Epoch 10: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0328 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 11/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0014 - mae: 0.0294 - mse: 0.0014
Epoch 11: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 8ms/step - loss: 0.0014 - mae: 0.0294 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0359 - val_mse: 0.0019 - learning_rate: 5.0000e-04
Epoch 12/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0294 - mse: 0.0014
Epoch 12: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 5ms/step - loss: 0.0014 - mae: 0.0294 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0317 - val_mse: 0.0015 - learning_rate: 5.0000e-04
Epoch 13/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014
Epoch 13: val_loss did not improve from 0.00138
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0302 - val_mse: 0.0014 - learning_rate: 5.0000e-04
Epoch 14/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 14: val_loss did not improve from 0.00138

Epoch 14: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0296 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0336 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 15/30
512/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014
Epoch 15: val_loss improved from 0.00138 to 0.00134, saving model to models/saved/Direct_Refiner_Model_avg_lstm_simple.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 5ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014 - val_loss: 0.0013 - val_mae: 0.0297 - val_mse: 0.0013 - learning_rate: 2.5000e-04
Epoch 16/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013
Epoch 16: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013 - val_loss: 0.0016 - val_mae: 0.0323 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 17/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 7ms/step - loss: 0.0013 - mae: 0.0292 - mse: 0.0013
Epoch 17: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 8ms/step - loss: 0.0013 - mae: 0.0292 - mse: 0.0013 - val_loss: 0.0014 - val_mae: 0.0307 - val_mse: 0.0014 - learning_rate: 2.5000e-04
Epoch 18/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0013 - mae: 0.0293 - mse: 0.0013
Epoch 18: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 7ms/step - loss: 0.0013 - mae: 0.0293 - mse: 0.0013 - val_loss: 0.0019 - val_mae: 0.0355 - val_mse: 0.0019 - learning_rate: 2.5000e-04
Epoch 19/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0292 - mse: 0.0014
Epoch 19: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0292 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0318 - val_mse: 0.0015 - learning_rate: 2.5000e-04
Epoch 20/30
509/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 20: val_loss did not improve from 0.00134

Epoch 20: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0019 - val_mae: 0.0358 - val_mse: 0.0019 - learning_rate: 2.5000e-04
Epoch 21/30
508/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0013 - mae: 0.0292 - mse: 0.0013
Epoch 21: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0013 - mae: 0.0292 - mse: 0.0013 - val_loss: 0.0016 - val_mae: 0.0330 - val_mse: 0.0016 - learning_rate: 1.2500e-04
Epoch 22/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0013 - mae: 0.0288 - mse: 0.0013
Epoch 22: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0013 - mae: 0.0288 - mse: 0.0013 - val_loss: 0.0015 - val_mae: 0.0318 - val_mse: 0.0015 - learning_rate: 1.2500e-04
Epoch 23/30
511/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014
Epoch 23: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0318 - val_mse: 0.0015 - learning_rate: 1.2500e-04
Epoch 24/30
510/516 ━━━━━━━━━━━━━━━━━━━━ 0s 6ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013
Epoch 24: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 4s 7ms/step - loss: 0.0013 - mae: 0.0291 - mse: 0.0013 - val_loss: 0.0016 - val_mae: 0.0331 - val_mse: 0.0016 - learning_rate: 1.2500e-04
Epoch 25/30
508/516 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014
Epoch 25: val_loss did not improve from 0.00134

Epoch 25: ReduceLROnPlateau reducing learning rate to 6.25000029685907e-05.
516/516 ━━━━━━━━━━━━━━━━━━━━ 3s 6ms/step - loss: 0.0014 - mae: 0.0293 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0326 - val_mse: 0.0016 - learning_rate: 1.2500e-04
Epoch 25: early stopping
Restoring model weights from the end of the best epoch: 15.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step
  Metric       Value
0    MSE    0.000934
1    MAE    0.024074
2   RMSE    0.030557
3     R2    0.627565
4   MAPE    4.364720
5  SMAPE    4.310954
6    SAE  129.641100
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 65ms/step
Registered model 'Direct_Refiner_Model_avg_lstm_simple' already exists. Creating a new version of this model...
Created version '2' of model 'Direct_Refiner_Model_avg_lstm_simple'.

Hybrid: Direct Average + Refine LSTM Average

In [37]:
dir_model = mlflow.keras.load_model("models:/Direct_LSTM_Model_average/3") 
run_direct_refiner_experiment(build_average_refinement_lstm,
                              dir_model,
                              'avg_lstm_avg',
                              'ref_avg_lstm_avg',
                              X_train_dir=X_train_dir,
                              X_test_dir=X_test_dir,
                              X_val_dir=X_val_dir,
                              y_test_dir=y_test_dir,
                              y_train_dir=y_train_dir,
                              y_val_dir=y_val_dir,
                              output_steps=20,
                              units=64)
516/516 ━━━━━━━━━━━━━━━━━━━━ 19s 35ms/step
172/172 ━━━━━━━━━━━━━━━━━━━━ 6s 32ms/step
169/169 ━━━━━━━━━━━━━━━━━━━━ 6s 34ms/step
(20, 1)
Model: "Refiner_LSTM_Average"
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Layer (type)                    ┃ Output Shape           ┃       Param # ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ refinement_input (InputLayer)   │ (None, 20, 1)          │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_44 (LSTM)                  │ (None, 20, 64)         │        16,896 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_45 (Dropout)            │ (None, 20, 64)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_45 (LSTM)                  │ (None, 20, 32)         │        12,416 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_46 (Dropout)            │ (None, 20, 32)         │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ lstm_46 (LSTM)                  │ (None, 16)             │         3,136 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dropout_47 (Dropout)            │ (None, 16)             │             0 │
├─────────────────────────────────┼────────────────────────┼───────────────┤
│ dense_19 (Dense)                │ (None, 1)              │            17 │
└─────────────────────────────────┴────────────────────────┴───────────────┘
 Total params: 32,465 (126.82 KB)
 Trainable params: 32,465 (126.82 KB)
 Non-trainable params: 0 (0.00 B)
Epoch 1/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0206 - mae: 0.0968 - mse: 0.0206
Epoch 1: val_loss improved from inf to 0.00447, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 13s 18ms/step - loss: 0.0206 - mae: 0.0967 - mse: 0.0206 - val_loss: 0.0045 - val_mae: 0.0580 - val_mse: 0.0045 - learning_rate: 0.0010
Epoch 2/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0046 - mae: 0.0536 - mse: 0.0046
Epoch 2: val_loss improved from 0.00447 to 0.00173, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0046 - mae: 0.0536 - mse: 0.0046 - val_loss: 0.0017 - val_mae: 0.0342 - val_mse: 0.0017 - learning_rate: 0.0010
Epoch 3/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0034 - mae: 0.0465 - mse: 0.0034
Epoch 3: val_loss did not improve from 0.00173
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0034 - mae: 0.0464 - mse: 0.0034 - val_loss: 0.0019 - val_mae: 0.0355 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 4/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0024 - mae: 0.0387 - mse: 0.0024
Epoch 4: val_loss did not improve from 0.00173
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 18ms/step - loss: 0.0024 - mae: 0.0387 - mse: 0.0024 - val_loss: 0.0023 - val_mae: 0.0400 - val_mse: 0.0023 - learning_rate: 0.0010
Epoch 5/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0019 - mae: 0.0348 - mse: 0.0019
Epoch 5: val_loss improved from 0.00173 to 0.00170, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 18ms/step - loss: 0.0019 - mae: 0.0348 - mse: 0.0019 - val_loss: 0.0017 - val_mae: 0.0338 - val_mse: 0.0017 - learning_rate: 0.0010
Epoch 6/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0017 - mae: 0.0328 - mse: 0.0017
Epoch 6: val_loss did not improve from 0.00170
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0017 - mae: 0.0328 - mse: 0.0017 - val_loss: 0.0019 - val_mae: 0.0357 - val_mse: 0.0019 - learning_rate: 0.0010
Epoch 7/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0015 - mae: 0.0312 - mse: 0.0015
Epoch 7: val_loss did not improve from 0.00170

Epoch 7: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0015 - mae: 0.0312 - mse: 0.0015 - val_loss: 0.0026 - val_mae: 0.0428 - val_mse: 0.0026 - learning_rate: 0.0010
Epoch 8/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0304 - mse: 0.0014
Epoch 8: val_loss improved from 0.00170 to 0.00167, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0014 - mae: 0.0304 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0334 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 9/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0015 - mae: 0.0305 - mse: 0.0015
Epoch 9: val_loss did not improve from 0.00167
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0015 - mae: 0.0305 - mse: 0.0015 - val_loss: 0.0021 - val_mae: 0.0377 - val_mse: 0.0021 - learning_rate: 5.0000e-04
Epoch 10/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0015 - mae: 0.0302 - mse: 0.0015
Epoch 10: val_loss did not improve from 0.00167
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0015 - mae: 0.0302 - mse: 0.0015 - val_loss: 0.0017 - val_mae: 0.0334 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 11/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0015 - mae: 0.0305 - mse: 0.0015
Epoch 11: val_loss improved from 0.00167 to 0.00146, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 18ms/step - loss: 0.0015 - mae: 0.0305 - mse: 0.0015 - val_loss: 0.0015 - val_mae: 0.0312 - val_mse: 0.0015 - learning_rate: 5.0000e-04
Epoch 12/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014
Epoch 12: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0320 - val_mse: 0.0015 - learning_rate: 5.0000e-04
Epoch 13/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 13: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0337 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 14/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 14: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0334 - val_mse: 0.0017 - learning_rate: 5.0000e-04
Epoch 15/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014
Epoch 15: val_loss did not improve from 0.00146
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0303 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0325 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 16/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014
Epoch 16: val_loss improved from 0.00146 to 0.00134, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0301 - mse: 0.0014 - val_loss: 0.0013 - val_mae: 0.0297 - val_mse: 0.0013 - learning_rate: 5.0000e-04
Epoch 17/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014
Epoch 17: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 15ms/step - loss: 0.0014 - mae: 0.0302 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0317 - val_mse: 0.0015 - learning_rate: 5.0000e-04
Epoch 18/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015
Epoch 18: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0015 - mae: 0.0303 - mse: 0.0015 - val_loss: 0.0014 - val_mae: 0.0300 - val_mse: 0.0014 - learning_rate: 5.0000e-04
Epoch 19/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015
Epoch 19: val_loss did not improve from 0.00134
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0015 - mae: 0.0304 - mse: 0.0015 - val_loss: 0.0016 - val_mae: 0.0325 - val_mse: 0.0016 - learning_rate: 5.0000e-04
Epoch 20/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 20: val_loss improved from 0.00134 to 0.00131, saving model to models/saved/Direct_Refiner_Model_avg_lstm_avg.keras
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0013 - val_mae: 0.0290 - val_mse: 0.0013 - learning_rate: 5.0000e-04
Epoch 21/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 21: val_loss did not improve from 0.00131

Epoch 21: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0020 - val_mae: 0.0364 - val_mse: 0.0020 - learning_rate: 5.0000e-04
Epoch 22/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 22: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0329 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 23/30
513/516 ━━━━━━━━━━━━━━━━━━━━ 0s 17ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014
Epoch 23: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 10s 19ms/step - loss: 0.0014 - mae: 0.0297 - mse: 0.0014 - val_loss: 0.0014 - val_mae: 0.0302 - val_mse: 0.0014 - learning_rate: 2.5000e-04
Epoch 24/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 17ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014
Epoch 24: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 18ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0338 - val_mse: 0.0017 - learning_rate: 2.5000e-04
Epoch 25/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 16ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014
Epoch 25: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 9s 17ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0330 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 26/30
516/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 26: val_loss did not improve from 0.00131

Epoch 26: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0323 - val_mse: 0.0016 - learning_rate: 2.5000e-04
Epoch 27/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014
Epoch 27: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0295 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0327 - val_mse: 0.0016 - learning_rate: 1.2500e-04
Epoch 28/30
515/516 ━━━━━━━━━━━━━━━━━━━━ 0s 15ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014
Epoch 28: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0300 - mse: 0.0014 - val_loss: 0.0015 - val_mae: 0.0313 - val_mse: 0.0015 - learning_rate: 1.2500e-04
Epoch 29/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014
Epoch 29: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0298 - mse: 0.0014 - val_loss: 0.0017 - val_mae: 0.0336 - val_mse: 0.0017 - learning_rate: 1.2500e-04
Epoch 30/30
514/516 ━━━━━━━━━━━━━━━━━━━━ 0s 14ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014
Epoch 30: val_loss did not improve from 0.00131
516/516 ━━━━━━━━━━━━━━━━━━━━ 8s 16ms/step - loss: 0.0014 - mae: 0.0299 - mse: 0.0014 - val_loss: 0.0016 - val_mae: 0.0324 - val_mse: 0.0016 - learning_rate: 1.2500e-04
Epoch 30: early stopping
Restoring model weights from the end of the best epoch: 20.
No description has been provided for this image
169/169 ━━━━━━━━━━━━━━━━━━━━ 1s 6ms/step
  Metric       Value
0    MSE    0.001011
1    MAE    0.025225
2   RMSE    0.031797
3     R2    0.596727
4   MAPE    4.599685
5  SMAPE    4.510796
6    SAE  135.835938
No description has been provided for this image
No description has been provided for this image
1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 39ms/step
Registered model 'Direct_Refiner_Model_avg_lstm_avg' already exists. Creating a new version of this model...
Created version '3' of model 'Direct_Refiner_Model_avg_lstm_avg'.